-
Notifications
You must be signed in to change notification settings - Fork 490
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
[WIP] Update Dependencies and Small Improvements #605
Conversation
@hacdias Is this working for you locally? Maybe I started reviewing way too early :) Sorry about that! |
@diasdavid everything but file previews and objects' page. |
|
Ah, the error was on my end, I was using another branch of go-ipfs. Now I see it working: Great work with the deps update, @hacdias! 👏🏽
When you use a
Containers come from Redux, are you familiar with it? |
I'm not, but I'll get familiar to it ;) I'm still updating object's page. Right now, on master, previews are not working but they're working now. Although, I'm receiving a very strange error which doesn't have any side effect apparently. Another thing I noticed are the 'Unmapped range' errors I'm getting on Connections page. I already know their source but I'm not understanding why they are happening here. Do you have any thoughts on this? |
I'm also checking what's happening there, it seems that here: https://github.com/ipfs/webui/blob/master/src/app/js/pages/connections.js#L56 We call getLocation (which is lookupPretty) with a PeerId and a multiaddr, but then it returns an error "Unmapped range" coming from https://github.com/ipfs/ipfs-geoip/blob/master/src/pretty.js#L15-L17 which only happens when we pass an empty array. Now checking what goes inside the Peer :) |
It's actually coming from https://github.com/ipfs/ipfs-geoip/blob/master/src/lookup.js#L50. Bad error names, let me change that. Nevertheless, this means that geoip doesn't have info from the location of that IP, this should not error to the user and only show that location is Unknown. @hacdias think you can improve that part of the experience? |
Good to know you found the problem so fast 😮 |
I've been around this codebase before 😉 geoip will need:
Until then, webui should not fail on the user, it should just show n/a |
@diasdavid sure thing. |
@diasdavid sorry, there are some things I'm needing help with:
In the meanwhile, I'll make some improvements to the File Manager and the preview page and update this PR accordingly. Edit (14th Nov, 10:32am): the object's page is now working better. The URLs' hash scheme is |
@diasdavid take a look at the checkboxes above 😄 There are a lot of new ones!! I'd like to know if you could help me with the unchecked checkboxes from the first section ("Update Dependencies and Other Improvements"). About the File Manager: do you think a download button for files/folders would be great? What about a slightly improved design? One more question: we're using Bootstrap, right? 😃 Edit: what do you think about using Semantic UI instead of Bootstrap? They've got an official package for React and it doesn't seem that our current library (react-bootstrap) isn't getting much love recently! |
Still some deps to be updated Here is a handy module to check things http://npmjs.com/npm-check-updates |
Yeah, I've been using that module. Thanks 😄 |
Hi @hacdias! Just got to review your work, lots of progress here! Congratz 👏🏽👏🏽👏🏽 This PR is a bit exploding in size, let's focus on wrapping it up so that then multiple things can be tackled at the same time. From what I understand, the things that are essential to merge this PR are:
Also, important question, are we able now to generate a build version to deploy with the next go-ipfs? The current webui go-ipfs ships is kind of out of date (//cc @whyrusleeping )
We picked Bootstrap at the time because of its community support, documentation and stability. I understand that the world has changed and that new UI frameworks can fit us better. Before we jump to a decision, let's create a issue (you create it :)) in this repo to discuss what is the best and then we ask our community to help us decide given their experience. Btw, since you are also a designed, how experienced are you with Invision and Sketch? Wanna work on the next UI together? I can create a team and invite you there. |
Thanks!
Sure, let's focus on its initial topic and update the dependencies. I'll need some help with the tests and the object by path. The remaining dependencies are updated 😄
I'll open an issue then. I'm not experienced with Invision nor Sketch. Yeah, I'd like to work on the next UI 😮 It seems to be a challenging work to do and I could learn more about design I guess. 😄 |
@diasdavid I think there is some kind of error on js-ipfs-api in |
@hacdias I believe that was a bug introduced with ipfs-inactive/js-ipfs-http-client#629 which changed how files are sent to the daemon, wanna try figure that one out and added a test to make sure it works well? @pgte can help you by answering your questions :) |
I'll check that this evening. In the meanwhile, everything is greeen 😄 Edit: rebased everything atop of master. Also opened a PR on HenrikJoreteg/hjs-webpack#349 to support ES6. |
Update dependencies Update dependencies Update dependencies Update Dependencies update dependencies! Fix Object Links Fix Globe Texture Update Babel to Version 7 Update React chore: remove lock files docs: give some love to the README Make views refresh the right way Make preview work Update GeoIP Fix "same-name directory" issue #603 Remove unused param Objects page already display the hash table Fix link to Objects page Fix nameon preview Remove unnecessary elements Fix object's view Update File Explorer and File Preview Styles Sweet file explorer! Use urls like /objects/ipfs/hash instead of /objects\/ipfs\hash avoid double slash Add upload button to action bar Remove safe-buffer and use built-ins Update js-ipfs-api Rudimentary Rename (not working) Make Move work :D F2, esc and del keys Rename on Action Bar CTRL+Click, Multiple files shift-CLICK to select range of files update dependencies Remove fetch objects by path remove useless comments update deps fix 'npm run build' remove coment and add pr link Use fork of hjs-webpack update some tests fix config.spec.js update circle.yml
6386bf9
to
e46508d
Compare
👏🏽👏🏽👏🏽👏🏽👏🏽👏🏽 Excellent work @hacdiasThis means that we finally can ship new WebUIs to go-ipfs //cc @whyrusleeping |
Thanks @diasdavid! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some tidbits, otherwise it LGTM :)
I would appreciate some review from the folks that have worked on the webui project before.
"webpack": "^3.0.0" | ||
"style-loader": "^0.19.0", | ||
"url-loader": "^0.6.2", | ||
"webpack": "^3.8.1" | ||
}, | ||
"pre-commit": [ | ||
"lint" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sooo greeeen! :D
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Am I supposed to change anything in here? 😮
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just happy :)
break | ||
} | ||
|
||
this.selectAllBetween(fi, la) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@hacdias can we convert this loop into something more JavaScript'y/Functional? Check out all the beautiful array methods https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array and try to use variable names that try to be more explicit (it is ok to use full words in JS land)
for (let i = fi; i <= la; i++) { | ||
const filePath = join(root, list[i].Name) | ||
select(filePath) | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, let's make this more JavaScripty, I have no idea what is fi
and la
Update Dependencies and Other Improvements
/objects/\\ipfs\\{hash}
to/objects/ipfs/{hash}
.View object by PathFile Manager/Preview Improvements (secondary)