Commit Graph

553 Commits

Author SHA1 Message Date
Dawood Khan
714ab2cc09
Audio waveform (#2706)
* utils func

* changes

* changes

* changes

* notebook

* fix

* changes

* change

* changes

* changes

* notebook fix

* changes

* changes

* changes

* change

* fix

* revert backend changes,  gr.make_waveform

* notebook

* Update CHANGELOG.md

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

* format fix

* changes

* changes

* revert pnpm

* change

* change

* changes

* changes

* changes

Co-authored-by: Ali Abid <aabid94@gmail.com>
Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-12-15 12:35:22 -06:00
Abubakar Abid
074bf909ee
Better documentation of queuing parameters (#2825)
* better documentation of queuing parameters

* changelog

* added to guide

* deprecated param

* python 3.7 compat
2022-12-15 10:41:09 -06:00
Abubakar Abid
53005ab88a
Switch from SSH tunneling to FRP (#2509)
* FRP Poc (#2396)

* FRP Poc

* Gracefully handle exceptions in thread tunneling

* comments

* Fix share error message when files are built locally (#2502)

* fix share error message

* changelog

* formatting

* tunneling rename

* version

* formatting

* remove test

* changelog

* version

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
Co-authored-by: Wauplin <lucainp@gmail.com>

* 2509

* updated url to testing.gradiodash.com

* gradiotesting

* format, version

* gradio.live

* temp fix for https

* remove unnecessary tests

* version

* updated tunnel logic

* formatting and tests

* load testing

* changes

* Make private method + generate privilege key (#2519)

* rm load test

* frp

* formatting

* Update run.py

* Update run.py

* updated message

* share=True

* [DO NOT MERGE] Add pymux for FRP (#2747)

* Add pymux for FRP

* Cleaning pyamux

* Cleaning pyamux + make it work

* Forgot the thread

* Reformat

* some logs to be removed afterwards

* added share to hello world

* Transform into object

* I guess it's cleaner now

* Handle 404 + Transform to object

* Fix params names

* Add debug

* windows fix

Co-authored-by: Wauplin <lucainp@gmail.com>
Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

* removed share=True

* formatting

* hello world notebook

* version

* fixes

* formatting

* testing tunneling exists

* tests

* formatting

* lint

* Remove asyncio + kill proc on exit

* version

* version

* update changelog

* explicit message about reporting

Co-authored-by: Adrien <adrien@xcid.fr>
Co-authored-by: Wauplin <lucainp@gmail.com>
Co-authored-by: Ali Abid <aabid94@gmail.com>
2022-12-14 08:10:45 -06:00
Abubakar Abid
5182460886
Patching test_get_ip attempt 2 (#2810)
* ip-patch-2

* formatting

* patch 2
2022-12-13 20:30:47 -06:00
Abubakar Abid
b492212c02
Patch ip test (#2808)
* patch ip test

* changelog
2022-12-13 17:15:14 -06:00
Abubakar Abid
c126e62970
Add support for numpy array and other types to gr.Dataframe() initial value (#2804)
* bigquery draft

* updated guide

* orjson fix

* formatting

* changelog

* rm guide
2022-12-13 17:01:27 -06:00
Abubakar Abid
db48356832
Revert #2760 (#2799)
* changelog

* changelog
2022-12-12 13:10:39 -05:00
Freddy Boulton
3672e17256
Terminate generating events early if the session is closed (#2783)
* Return early if no awake events

* Add to changelog

* Add test

* Clarify when events are cancelled in the docs
2022-12-12 09:15:50 -05:00
Alexandre Payot
c70f8fedd4
Merge highlighted text when neighbors (#2767)
* Merge highlighted text when neighbors

In the previous implementation dictionary inputs were not correctly
processed meaning: a None token was added on the empty string between
each entity. That None entry is removed letting neighbouring entities
be merged.

* Add changelog

* Add test

* Improve API compatibility and fix test

* Fix lint

* Strip out the empty entries on merge

* Test against the right reference

* fix changelog

* Apply suggestions from code review

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

* Remove additonal merge adjacent

* Fix lint

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-12-09 17:42:44 -08:00
Freddy Boulton
f60053d85f
gr.ScatterPlot component (#2764)
* Try clean install

* Resolve peer dependencies?

* CHANGELOG

* Add outbreak_forcast notebook

* generate again

* CHANGELOG

* Add image to changelog

* Color palette

* Fix colors + legend

* Tooltip

* Add axis titles

* Clean up code a bit + quant scales

* Add code

* Add size, shape + rename legend title

* Fix demo

* Add update + demo

* Handle darkmode better

* Try new font

* Use sans-serif

* Add caption

* Changelog + tests

* More tests

* Address comments

* Make caption fontsize smaller and enable interactivity

* Add docstrings + add height + width

* Use normal font weight

* Make last values keyword only

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

* Fix typo

* Accept value as fn

* reword changelog a bit

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-12-09 10:14:07 -05:00
Freddy Boulton
2a773d56ac
Fix preprocessing for audio input pipelines in external.py (#2779)
* Fix bug in loading audio

* Changelog

* Add test

* Fail if error doesn't come from rate limit

* lint

* update model examples

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-12-09 09:12:19 -05:00
Ajinkya K Mulay
76c4a553f5
Add backend validation for Slider, Radio, and CheckboxGroup (#2760)
* Add backend validation for form limitations [slider, radio, checkboxgroup]

Adds a preprocessing step for the slider, radio, and checkboxgroup components, as demonstrated in the issue "No backend validation for form limitations #1071."

* Update gradio/components.py

* Update gradio/components.py

* Update gradio/components.py

* fixes to logic

* updated tests

* formatting

* changelog fix

* revert test requirements

* delete artifact

* sanitizing docstrings

* comments

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-12-08 20:04:42 -08:00
Freddy Boulton
bed288a509
Add support for altair plots (#2741)
* Try clean install

* Resolve peer dependencies?

* frozen lockfile install

* Explicitly use version 16

* Add env

* Add altair demo

* Add unit test

* CHANGELOG

* Add image to changelog

* Add outbreak_forcast notebook

* Try again

* generate again

* Update ui/packages/plot/src/Plot.svelte

Co-authored-by: aliabid94 <aabid94@gmail.com>

* Fix title

Co-authored-by: aliabid94 <aabid94@gmail.com>
2022-12-02 14:53:42 -03:00
Abubakar Abid
588b0f7b2d
Show image thumbnails when example directory is provided (#2745)
* examples

* fixes

* formatting, changelog

* fix tests

* update documentation

Co-authored-by: Freddy Boulton <alfonsoboulton@gmail.com>
2022-12-01 13:41:54 -06:00
Freddy Boulton
dd90b37c9b
Update Label color from backend (#2736)
* Implement label improvements

* Fix tests + lint

* Update null case

* Types + changelog

* Add gif to changelog

* Changelog + implement for confidences

* Reduce dupe

* Change API - only use string - no function

* Update API in CHANGELOG

* Update comment

* misc fixes
2022-12-01 14:30:11 -05:00
Abubakar Abid
5c8e7887dc
Add Markdown support in chatbots (#2731)
* started working on this

* demo

* added markdown support

* notebook

* changelog

* tests

* chatbot

* formatting
2022-11-29 14:26:21 -06:00
Kashif Rasul
d79039beb1
Latex support (#2696)
* initial use of dollarmath plugin

* add frontend support

* chnages

* changes

* changes

* changes

* changes

* fix

* added latex to kinematics blocks

* changes

* Update CHANGELOG.md

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

* added example to changelog

* remove param

* doc fix

* fixes

* latex noteboox fix

* fix

* changes

Co-authored-by: Ali Abid <aabid94@gmail.com>
Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-11-29 11:26:17 -08:00
Freddy Boulton
5b71ff7e6f
Update accordion from backend (#2690)
* Update accordion from backend

* Update changelog

* Add gif to changelog

* Use reactive values
2022-11-28 18:12:24 -05:00
SkyTNT
2c04f77281
Fix filename too long in processing_utils.decode_base64_to_file and processing_utils.create_tmp_copy_of_file (#2685)
* fix filename too long

* move to strip_invalid_filename_characters

* test

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-11-27 20:55:10 -06:00
CoffeeVampir3
6c73e79c4e
Fixed a type bug where the validation was "binary" (#2727)
* Fixed a type bug where the validation was "binary"

In line 2113 the type was validated as either file or binary:
```python
        valid_types = ["file", "binary"]
        if type not in valid_types:
            raise ValueError(
                f"Invalid value for parameter `type`: {type}. Please choose from one of: {valid_types}"
            )
```

However line 2183 preprocess single file wanted either "file" or "bytes"
```python
            elif self.type == "bytes":
```

I have arbitrarily picked binary as the one to match, but now they are both consistent.

* added test, changelog, formatting

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-11-27 20:12:58 -06:00
Abubakar Abid
8793719924
Adds better warnings / error messages for gr.Interface.load() (#2694)
* added better docs

* formatting

* changelog
2022-11-22 22:44:47 -06:00
Dawood Khan
b5f22671a2
Add Upload Button (#2591)
* add upload button

* upload button

* changelog

* Update CHANGELOG.md

* format

* update file component

* upload button fixes

* label

* remove fileupload changes

* remove file component changes

* restore lock file

* pnpm lock file

* Update CHANGELOG.md

* fixes

* fixes

* more fixes

* fix tests

* fixes

* lockfile

* fix test

* Update gradio/components.py

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-11-21 13:34:31 -05:00
Victor Muštar
70227354e6
UI update: API documentation page (#2652)
* changes

* update UI

* ui update

* add font weight 600 to google font <link>

* import paths

* changes

* changes

* changes

* changes

* Update ui/packages/app/src/ApiDocs.svelte

Co-authored-by: Victor Muštar <victor.mustar@gmail.com>

* changes

* changes

* changes

* changes

* changes

* changes

Co-authored-by: Ali Abid <aabid94@gmail.com>
Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-11-20 16:21:01 -06:00
Abubakar Abid
5e148c3752
Adding ability to access in Fastapi request object into your function (#2641)
* fastapi requests

* formatting

* implement

* fix

* formatting

* formatting

* changelog

* added demo

* remove print

* added to guide

* changes for queuing

* changes to gr.Request

* formatting

* formatting

* fixes

* lint

* fixed tests

* fix batching

* fixing tests

* cleanup

* lint

* added tests; fixed review

* improve docs
2022-11-19 00:52:06 -08:00
Abubakar Abid
1c244cc342
pass in kwargs to Blocks.load() (#2669)
* pass in kwargs to Blocks.load()

* added test

* changelog
2022-11-17 17:22:16 -08:00
Abubakar Abid
8ec0a1e2b8
Quick fix to gr.utils.validate_url (#2659)
* fix validate

* formatting

* fix tests

* added flaky mark
2022-11-16 12:21:51 -08:00
pngwn
4b57984ead
add password and email textbox types (#2653)
* add password and email textbox types

* changelog + fix tests

* formatting

* fix tests maybe

* fix tests

* add more tests

* whatever

* weird thing
2022-11-15 22:23:47 +01:00
Freddy Boulton
e6336d6882
Fix bug with gr.update and interactive=True (#2639)
* Fix update interactivity

* Lint

* CHANGELOG

* Fix

* Undo interactive=True

* Do not call update twice

* Add unit test

* Revert change

* Lint
2022-11-15 11:53:35 -05:00
Freddy Boulton
ebb65eb9ee
Fix loading interface with examples (#2640)
* fix examples

* Fix test

* Add unit test

* Add CHANGELOG

* Add unit test where load external

* fix for older demos

* Add comment
2022-11-15 11:20:59 -05:00
Freddy Boulton
06353ca939
Pin fastapi test version to 0.87.0 (#2647)
* Pin fastapi test version

* trigger ci

* Upgrade to 0.87

* Update txt file
2022-11-14 14:31:03 -05:00
GLGDLY
b75b7b7475
Allow auth with using queue (#2611)
* Update queue.py

* Update queue.py

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update queue.py

* Update requirements.txt

websockets with version <=9.1 with raise TypeError: WebSocketCommonProtocol.__init__() got an unexpected keyword argument 'logger'

* fix issues after rebase

* feat Allow auth with using queue

* remove unused imports

* Update CHANGELOG.md

fix wrong position in changlog from the last pr #2428 also

* revert test_queue_enabled_for_fn that is changed due to unintended mistake

* remove comment

* update tests and merge main thread

Co-authored-by: Freddy Boulton <alfonsoboulton@gmail.com>
Co-authored-by: Ali Abid <aabid94@gmail.com>
2022-11-09 04:24:51 -05:00
Abubakar Abid
010827e211
Refactoring to replace unittests with pytests (#2610)
* replace pytests with unittests

* formatting

* test blocks

* fixed test/blocks

* test components

* working on test components

* test components

* test components almost fixed

* removed unittest

* linting

* fix remaining tests

* lint

* formatting

* changelog
2022-11-08 01:37:55 +01:00
GLGDLY
b1cc5be78d
Update queue with using deque & Update requirements (#2428)
* Update queue.py

* Update queue.py

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update queue.py

* Update requirements.txt

websockets with version <=9.1 with raise TypeError: WebSocketCommonProtocol.__init__() got an unexpected keyword argument 'logger'

* fix issues after rebase

Co-authored-by: Freddy Boulton <alfonsoboulton@gmail.com>
2022-11-04 16:53:23 -04:00
Abubakar Abid
218fb9fa65
Allow gr.Templates to take in arguments (#2600)
* template customization

* changelog

* fixes

* import

* added test

* formatting

* explicit parameters

* updated changelog

* fix typing

* fix test
2022-11-04 09:08:17 -07:00
aliabid94
91abb3ae11
Allow gradio embeds in colab without share (#2455)
* changes

* change

* changes

* changes

* changes

* Update colab.html

* update version

* changes

* Update gradio/templates/colab.html

Co-authored-by: pngwn <hello@pngwn.io>

* changes

* changes

* changers

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* revert

* changes

* changes

* changes

* strings

* formatting

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
Co-authored-by: pngwn <hello@pngwn.io>
2022-11-03 15:51:30 -07:00
Abubakar Abid
43f5cf5f30
Load example from external Spaces (#2594)
* started

* loading examples

* saves

* fixes

* formatting

* iocomponent

* added support to other components

* fixed tests

* added video support

* added 1 test

* more changes

* reverted components.py

* remaining components

* formatting

* fixes

* fixes

* tests

* fixed ability to load multiple spaces
2022-11-03 12:35:56 -07:00
Freddy Boulton
4a51cec5b4
Call fn by api_name when using Blocks.load (#2593)
* Updated implementation + test

* Add changelog

* Fix unit test
2022-11-02 13:38:56 -04:00
Freddy Boulton
f0d1cdf08f
Allow None in as_example for files (#2588)
* Fix file examples

* Changelog

* Fix changelog version name previous release
2022-11-01 17:36:38 -04:00
Abubakar Abid
e6cda90b69
Refactoring external.py (#2579)
* pass token & add typing

* updated docstring

* reorg

* improve docs

* test for private space

* changelog

* changed asserts

* pipelines

* streamline

* formatting

* int

* dataclass

* formatting

* annotations

* formatting

* external test fixes

* formatting

* typing

* addressing review

* fix tests

* dataframedata

* refactoring

* removed unused imports

* added better error message for invalid spaces

* removed unnecessary import
2022-11-01 09:14:15 -07:00
Abubakar Abid
e360f159a9
Add support for loading Private Spaces using HF Token (#2568)
* pass token & add typing

* updated docstring

* reorg

* improve docs

* test for private space

* changelog

* addressing review

* fix tests

* fix websocket headers
2022-10-31 20:29:13 -07:00
Freddy Boulton
a23eb53e3b
Run events every given number of seconds (#2512)
* WIP

* Fix implementation

* Fix units

* Rename

* Delete dead code

* This works

* Fix tests

* Final fix - still rough

* Reduce code duplication

* Fixing bugs + test

* Changelog

* Add gif to changelog

* Update demo and remove unused imports

* undo accidental diff

* Linting

* Add to guides

* Address comments

* formatting changelog

* Fix warnings
2022-10-28 17:53:06 -04:00
aliabid94
10552cb6fd
Allow user to send inputs as dictionary (#2550)
* change

* changes

* changes

* changes

* changes

* change

* changes

* changes

* changes

* changes

* changes

* format

* changes
2022-10-28 10:52:28 -07:00
Freddy Boulton
e0a55df7dc
Modify CI to check for unused imports (#2555)
* Add lint script + remove unused imports

* Add lint file to sc
2022-10-28 10:56:18 -04:00
Abubakar Abid
76512378a8
Adds support for audio samples in float64, float16, or uint16 formats (#2545)
* fixed audio

* added some unit tests

* formatting

* formatting
2022-10-26 16:24:46 -07:00
Abubakar Abid
5c80b544ab
Better error messages (#2543)
* events fix

* changelog, format, better error msg

* changelog

* changelog

* mix errors

* formatting

* switched from error to warnings

* typo
2022-10-26 16:10:26 -07:00
Freddy Boulton
099e1e84ec
Properly dequeue cancelled events when multiple apps are rendered (#2540)
* Fix render + tests

* Add comment + changelog
2022-10-26 16:29:47 -04:00
Abubakar Abid
560b3f99c0
Fixes cancels to work with multiple blocks (#2530)
* fixes cancels to work with multiple blocks

* formatting and changelog

* formatting and test

* skip test in 3.7
2022-10-25 14:54:33 -07:00
Freddy Boulton
7f9223fdbe
Prevent api requests from skipping queue (#2493)
* Prevent request to rest api from skipping queue

* Release notes

* Make changes to show_api

* Update gradio/blocks.py

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-10-25 11:45:15 -04:00
Abubakar Abid
0e168c4dff
Batching (#2218)
* batch

* formatting

* added parameter

* batch

* added docstrings

* correct arguments

* docstring

* adapt process_api for batch

* backend

* __call__

* more regular tests

* formatting

* cleaning up blocks.py

* __call__ works

* api route works

* first attempt at queue

* fixing tests

* fix some tests

* formatting

* removed print

* merge

* queue works!

* removed batch timeout

* removed batch timeout

* updated documentation

* fixing tests

* fixing tests

* fixing queue tests

* fixing queue tests

* formatting

* fix blocks config

* fix tests

* update documentation

* updated tests

* blocks

* blocks

* blocks

* tests

* test fixes

* more tests

* faster

* foramtting

* test fixes

* dataclasses

* fix

* revert to fix test

* fix

* fix test

* formatting

* fix tests

* refactoring examples

* formatting

* changelog

* fix examples

* formatting

* fix tests

* formatting

* catch error

* formatting

* fix tests

* fix cancel with batch

* final tests and docs

* test routes

* formatting
2022-10-24 16:32:37 -07:00
Rahul Varma
a18099f683
Allow render() to return self (#2514)
* Update blocks.py

Updated render() function in Blocks to return self

* Update CHANGELOG.md

* formatting

* fix changelog

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2022-10-23 05:59:15 -07:00