Skip to content
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

[pull] master from 47-studio-org:master #11

Open
wants to merge 164 commits into
base: master
Choose a base branch
from

Conversation

pull[bot]
Copy link

@pull pull bot commented Dec 14, 2023

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

jessicaschilling and others added 30 commits January 5, 2021 15:08
* Add missing classNames
* Put existing steps in correct order
* Add text for new steps
* off topic: make language selection button teal
* Reduce config highlight target area
* update react-joyride; auto placement on settings screen
* chore: fix scroll issue in joyride

Co-authored-by: Rafael Ramalho <rafazelramalho19@gmail.com>
* Separates i18n keys
* Remove extraneous import
* chore: fix help test
* Refer to more specific i18n key names

Co-authored-by: Rafael Ramalho <rafazelramalho19@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
- Reads modals root prop to insert current MFS path in CLI command
- Applied for all import commands at file menu
- Fixes: ipfs#1601
- Set break-word property to tooltip.
- Changed overflow of rows to visible.
- Set tooltip width to not exceed the menus width.

Closes  ipfs#1464
This PR adds visual feedback for then big files are imported:
progress bar + % status.

There is also new http-client and a bunch of required fixes.

* fix: broken file list stories
* feat: upload progress ui
* chore: integrate external changes
* fix: integrate new http client
* fix: jsdom problem
* fix(cid) switch circleci to new images
* fix(e2e): test/e2e/remote-api.test.js
  This makes E2E tests for remote API less flaky:
  - leverage expect-puppeteer where possible
  - tweak navigation so it is not impacted by connection-error state
  - force refresh of status page to avoid wait for manual refresh
  * fix(ci): E2E_IPFSD_TYPE=js npm run test:e2e
  js-ipfs changed CLI path at some point recently

Co-authored-by: Marcin Rataj <lidel@lidel.org>
* chore(i18n): dep bump + automatic locale data

Small i18n refactor that  makes things more future-proof:
ipfs-shipyard/i18n#9

* fix(i18n): regression in Trans

Latest i18next-icu uses upstream intl-messageformat for plurals,
unfortunately it means we no longer can mix tags with plurals in Trans
element. This is a cosmetic fix that makes the entire label a link.
* chore: WIP in settings page
* feat: add remote pinning services to the settings page
* chore: memoise pinning service color
* chore: set the same colors for pinning services manager items
* chore: update src/components/pinning-manager/PinningManager.js
* chore: remove console.log
* chore: make pinning work in go-ipfs 0.7 & add docs link
* chore: move pinning constants to another file
* feat: detect if remote services are available in the settings page
* chore: switch to production Pinata
https://pinata.cloud/documentation#PinningServicesAPI

* feat: remote pins on files page (ipfs#1721)
* feat: upload progress ui (ipfs#1655)

This PR adds visual feedback for when big files are imported:
progress bar + % status.

There is also new http-client and a bunch of required fixes.

* fix: broken file list stories
* feat: upload progress ui
* chore: integrate external changes
* fix: integrate new http client
* fix: jsdom problem
* fix(cid) switch circleci to new images
* fix(e2e): test/e2e/remote-api.test.js
  This makes E2E tests for remote API less flaky:
  - leverage expect-puppeteer where possible
  - tweak navigation so it is not impacted by connection-error state
  - force refresh of status page to avoid wait for manual refresh
  * fix(ci): E2E_IPFSD_TYPE=js npm run test:e2e
  js-ipfs changed CLI path at some point recently

Co-authored-by: Marcin Rataj <lidel@lidel.org>

* chore: rollback connect-deps

* chore: go-ipfs 0.8.0-rc1

* feat: integrate remote pinning in the files page

* chore: update deps

* chore: linting fixes

* feat: add pinning services to the pinning modal

* chore: update conflicts

Co-authored-by: Irakli Gozalishvili <contact@gozala.io>
Co-authored-by: Marcin Rataj <lidel@lidel.org>

* chore: disable js-ipfs tests for the time being

* feat: add autoUpload toggle to the pinning manager

* chore: change autoupload labels

* refactor: simplify size calculations

Using pre-existing stat helper makes webui immune to unexpected
exceptions.

Pin size calculation was removed, because it was already hidden in GUI
of Settings screen.

* fix: pin.remote.ls status check

This fixes a racy bug: when a single service was offline,
any remaining services were not checked due to error thrown.

This usually did not happen in Chromium, but failed pretty often in
Firefox, which seem to execute looped for awaits bit differently.

* fix: meaningful labels and variable names

* fix: auto upload labels

- basic explainer whatpolicy change means
- enable/disable
- manual/all files

* fix: disable pinning to offline services

- filled missing labels with basic explainer
  (can be improved in separate PRs)
- disabled pinning to services that are offline + added visual
  indication when there is a problem with service

* fix: pinning service templates

- sets icon and docs url when name includes template name

* style: auto upload modal title

Co-authored-by: Jessica Schilling <jessica@protocol.ai>

* style: auto upload modal description

Co-authored-by: Jessica Schilling <jessica@protocol.ai>

* style: auto upload menu item

Co-authored-by: Jessica Schilling <jessica@protocol.ai>

* fix: no online check for local pinning

* style: separate title for remote pin glyph

* chore: cleanup

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Irakli Gozalishvili <contact@gozala.io>
Co-authored-by: Jessica Schilling <jessica@protocol.ai>
* feat(peers): direction and mounted streams
* feat(peers): click to copy
* fix: geoipCache per ipfs-geoip version
* refactor: replace in/out, agent with open streams

Sadly I was not able to make things performant enough:

- in/out adds 1 HTTP request PER peer
  (and cant be cached as it is dynamic)
- agent also adds one (but could be cached)

We need better API than HTTP, maybe RPC over websockets or pubsub.

To salvage this PR I replaced mentioned columns with open libp2p
streams, which does not require any additional requests, but is pretty
useful, gives us insight if peer was used only for kad DHT, bitswap, pubsub etc.

* chore: update peers unit tests
* style: text-only tooltip for unnamed stream
* style: no-select latency column
* style: [unnamed] in copied text instead of emoji

Co-authored-by: Marcin Rataj <lidel@lidel.org>
* Delete modal language, standardization
* Delete -> Remove
* feat: add pinning services integration to the remove modal
* refactor: best-effort unpin after files.rm

This ensures we don't remove pins if removal failed first,
and also do pin removal in best-effort fashion to avoid crashing webui
on DAGs with multiple instances of the same CID

Also, closes ipfs#1740

* chore: change checkbox to match files page
* chore: fix selected files unsync after delete
* feat: add item/folder name to the description when removing
* style: move filename to modal title

This makes filename more prominent when a single item is removed.
Easier to scan when performing quick operations.

Co-authored-by: Rafael Ramalho <rafazelramalho19@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
* chore: refactor loadable pages & files page into functional component
* chore: testing pinning integration progressive loading
* refactor: reuse know remote pin state

This adds cache for not-pins per service, so we can cache remote pin state
after initial check and avoid sending unnecessary request every time we
enter the same directory.

* chore: add back react-loadable because of ipld-explorer-cpnts
* fix: remote pin checks in big dirs

This simplifies the way we pass information about remote pins to cache.
By batching all pin updates into a single event we avoid delays in UI
caused by unnecessary re-renders.

Additional fixes:
- requests are only sent to services that are confirmed to be online
- CIDs to check are deduplicated
- initial load of Files has fast remote pin feedback

Co-authored-by: Marcin Rataj <lidel@lidel.org>
* chore: latest ipfs-provider ipld-explorer-components
* fix: api with basic auth and e2e tests
* feat: remote pin error feedback
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Ongoing release dance is a good oportunity to rename and see what breaks
in pre-existing release process.
* docs: simplify release tag creation
* Update README.md

Co-authored-by: Jessica Schilling <jessica@protocol.ai>
hsanjuan and others added 29 commits August 9, 2022 22:52
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: lidel <lidel@users.noreply.github.com>
* chore(deps): update storybook/x

* chore: migrate addons to .storybook/main.js

* chore: migrate storybook config to .storybook/main.js

* chore(deps): fix storybook postCSS

* chore(deps): migrate static-dir flag to main.js

@see https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated---static-dir-cli-flag

* chore: ignore storybook-static/

* chore(deps): use storybook-CRA dep

This addresses the following warning when running `npm run storybook`:

  WARN Storybook support for Create React App is now a separate preset.
  WARN To use the new preset, install `@storybook/preset-create-react-app` and add it to the list of `addons` in your `.storybook/main.js` config file.
  WARN The built-in preset has been disabled in Storybook 6.0.

* chore(deps): use webpack5 with storybook

@see https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#webpack-5

* fix: storybook webpack errors

Resolves the following error:

  Error: NormalModuleFactory.beforeResolve (IgnorePlugin) is no longer a
  waterfall hook, but a bailing hook instead. Do not return the passed
  object, but modify it instead. Returning false will ignore the request
  and results in no module created.

* fix: npm run storybook succeeds

but displays error in built website

* fix: Support CSFv3 storybook components

@see https://storybook.js.org/docs/react/api/csf

* chore: update Cid.stories.js

* fix: default storybook argTypes

* chore: update JsonEditor.stories.js

* chore: update AddFilesInfo.stories.js

* fix: Cid.stories.js

* chore: update info-boxes/**/*.stories.js

* update: breadcrumbs.stories.js

* chore: run storiesOf migration script

* Ran `git ls-files | grep 'stories.js' | xargs -n1 -- npx --yes sb migrate storiesof-to-csf --glob`
* Normalized default stories exports
  * Added jsdoc comment for default exports
  * export default as object literal

* chore: add jsdoc for story exports

* chore: update eslint rules

* disable default export rule for stories
* enable react/prop-types validation warning

* feat: Migrate FilesList.stories

* chore: update .storybook/main.js

* fix: mark PinningModal file prop as required

* feat: Finish migrating PinningModal story

* fix: remove countly.init error for storybook

* feat: Migrate remaining storybook stories

* fix: npm install and build

* fix: eslint should pass CI

* chore: fix typecheck failures

* fix: run @storybook/cli migrate storiesof-to-csf

Migrated leftover storiesOf stories with:
`npx @storybook/cli migrate storiesof-to-csf -g '**/(Radio|PublishModal).stories.js'`

* fix: run eslint --fix

* fix: build-storybook warnings & errors

* fix: PublishModal.stories.js renders properly

* feat: add test-storybook to CI

* chore: add test-storybook.yml
## [2.18.0](ipfs/ipfs-webui@v2.17.3...v2.18.0) (2022-09-09)

 CID `bafybeidb5eryh72zajiokdggzo7yct2d6hhcflncji5im2y5w26uuygdsm`

 ---

### Features

* IPNS Publishing ([ipfs#1973](ipfs#1973)) ([4ff4939](ipfs@4ff4939))
* ux improvements to publish modal ([ipfs#1998](ipfs#1998)) ([ea4f632](ipfs@ea4f632))

### Bug Fixes

* **ci:** parsing "ipfs-cluster-ctl peers ls" output ([ipfs#1966](ipfs#1966)) ([828e460](ipfs@828e460))
* korean detection ([ipfs#2005](ipfs#2005)) ([362dab8](ipfs@362dab8))
* Kubo agent text to link via ReleaseLink [ipfs#2010](ipfs#2010) ([ipfs#2011](ipfs#2011)) ([3d04988](ipfs@3d04988))
* nodejs readme badges ([ipfs#1985](ipfs#1985)) ([a9e661b](ipfs@a9e661b))
* remove web ui version and keep revision ([ipfs#2000](ipfs#2000)) ([42ed78d](ipfs@42ed78d))
* resolve issues with automated releases  ([ipfs#1974](ipfs#1974)) ([9a7cfad](ipfs@9a7cfad))

### Trivial Changes

* add missing classnames dependency ([ipfs#1977](ipfs#1977)) ([c4216b8](ipfs@c4216b8))
* **deps:** update react-scripts ([ipfs#1969](ipfs#1969)) ([136b260](ipfs@136b260))
* pull transifex translations ([ipfs#1996](ipfs#1996)) ([0de4267](ipfs@0de4267))
* Pull transifex translations ([ipfs#2003](ipfs#2003)) ([cc51b15](ipfs@cc51b15))
* **readme:** NodeJS version support info ([ipfs#1986](ipfs#1986)) ([829450d](ipfs@829450d))
* **readme:** update release steps ([ipfs#1963](ipfs#1963)) ([c5b4822](ipfs@c5b4822))
* Update .github/workflows/stale.yml [skip ci] ([f15818d](ipfs@f15818d))
* update storybook and stories ([ipfs#2007](ipfs#2007)) ([83ceac1](ipfs@83ceac1)), closes [/github.com/storybookjs/storybook/blob/next/MIGRATION.md#webpack-5](https://github.com/ipfs//github.com/storybookjs/storybook/blob/next/MIGRATION.md/issues/webpack-5)
* chore: remove unused dependencies

* chore: re-add playwright-chromium

* update package-lock.json
* test: Add playwright test coverage support

* chore: remove extraneous comment

* fix: test-e2e.yml PR comment depends on context.issue.number

* fix: .nycrc json syntax

* fix: remove coverage comment; output report in action

* chore: ensure test:build always re-builds

* chore: ensure playwright coverage saves to correct folder

* fix: ensure test:build is ran before test:e2e

* fix: remove needs: build from test:e2e

* fix: put istandbul output back into .nyc_output

* chore: add codecov action

* fix: run nyc report prior to codecov action
* Add Filebase to List of Pinning Providers
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
## [2.18.1](ipfs/ipfs-webui@v2.18.0...v2.18.1) (2022-09-13)

 CID `bafybeiageaoxg6d7npaof6eyzqbwvbubyler7bq44hayik2hvqcggg7d2y`

 ---

### Bug Fixes

* show '0 B' instead of '-' for zero-length files ([ipfs#2018](ipfs#2018)) ([fda3bf5](ipfs@fda3bf5))
* update webui.ipfs.io dnslink on manual release ([ipfs#2024](ipfs#2024)) ([0f1e1c2](ipfs@0f1e1c2)), closes [ipfs#2021](ipfs#2021)

### Tests

* add playwright code coverage ([ipfs#2014](ipfs#2014)) ([0ecc822](ipfs@0ecc822))

### Trivial Changes

* pull transifex translations ([ipfs#2019](ipfs#2019)) ([5e59065](ipfs@5e59065))
* **readme:** correct IPFS Desktop release link ([b76c0db](ipfs@b76c0db))
* remove unused dependencies ([ipfs#2015](ipfs#2015)) ([f007d78](ipfs@f007d78))
…#2026)

* feat: add Web3.Storage  pinning provider
* feat: add Estuary  pinning provider
* chore: use dweb.link for gw links
* fix(settings): randomize pinning service templates

* fix: endpoint should not include /pins suffix
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: lidel <lidel@users.noreply.github.com>
Co-authored-by: Russell Dempsey <1173416+SgtPooki@users.noreply.github.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Henrique Dias <hacdias@gmail.com>
Co-authored-by: lidel <lidel@users.noreply.github.com>
* feat: add codecov_token to codecov step

* fix: disable codecov fail on error
## [2.19.0](ipfs/ipfs-webui@v2.18.1...v2.19.0) (2022-10-03)

 CID `bafybeiavrvt53fks6u32n5p2morgblcmck4bh4ymf4rrwu7ah5zsykmqqa`

 ---

### Features

* add codecov_token to codecov step ([ipfs#2044](ipfs#2044)) ([ee7cc63](ipfs@ee7cc63))
* add Web3.Storage and Estuary to pinning service templates ([ipfs#2026](ipfs#2026)) ([3aae1f2](ipfs@3aae1f2))

### Bug Fixes

* **settings:** randomize pinning service templates ([ipfs#2027](ipfs#2027)) ([cd211ac](ipfs@cd211ac))

### Tests

* add unit&storybook coverage to codecov ([ipfs#2023](ipfs#2023)) ([1961b17](ipfs@1961b17))

### Trivial Changes

* go-ipfs -> kubo name update ([ipfs#2022](ipfs#2022)) ([183c476](ipfs@183c476))
* pull new translations ([ipfs#2041](ipfs#2041)) ([1be6342](ipfs@1be6342))
* Pull transifex translations ([ipfs#2028](ipfs#2028)) ([5011e12](ipfs@5011e12))
* replace topojson with topojson-client ([ipfs#2035](ipfs#2035)) ([e06a878](ipfs@e06a878))
Co-authored-by: Russell Dempsey <1173416+SgtPooki@users.noreply.github.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
)

Co-authored-by: Piotr Galar <piotr.galar@gmail.com>
Co-authored-by: Russell Dempsey <1173416+SgtPooki@users.noreply.github.com>
Co-authored-by: Russell Dempsey <1173416+SgtPooki@users.noreply.github.com>
Co-authored-by: lidel <lidel@users.noreply.github.com>
Co-authored-by: lidel <lidel@users.noreply.github.com>
@pull pull bot added the ⤵️ pull label Dec 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.