([Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.4.1...74801f479d7bb89c5afd4c020c52e614cc566da5))
**Merged pull requests:**
- Add Styling to the HTML Pages [452](https://github.com/jupyter-server/jupyter_server/pull/452) ([afshin](https://github.com/afshin))
- Implement password hashing with `argon2-cffi` [450](https://github.com/jupyter-server/jupyter_server/pull/450) ([afshin](https://github.com/afshin))
- Escape user input in handlers flagged during code scans [449](https://github.com/jupyter-server/jupyter_server/pull/449) ([kevin-bates](https://github.com/kevin-bates))
- Fix for the terminal shutdown issue [446](https://github.com/jupyter-server/jupyter_server/pull/446) ([afshin](https://github.com/afshin))
- Update the branch filter for the CI badge [445](https://github.com/jupyter-server/jupyter_server/pull/445) ([jtpio](https://github.com/jtpio))
- Fix for `UnboundLocalError` in shutdown [444](https://github.com/jupyter-server/jupyter_server/pull/444) ([afshin](https://github.com/afshin))
- Update CI badge and fix broken link [443](https://github.com/jupyter-server/jupyter_server/pull/443) ([blink1073](https://github.com/blink1073))
- Fix syntax typo [442](https://github.com/jupyter-server/jupyter_server/pull/442) ([kiendang](https://github.com/kiendang))
- Port terminal culling from Notebook [438](https://github.com/jupyter-server/jupyter_server/pull/438) ([kevin-bates](https://github.com/kevin-bates))
- More complex handling of `open_browser` from extension applications [433](https://github.com/jupyter-server/jupyter_server/pull/433) ([afshin](https://github.com/afshin))
- Correction in Changelog [429](https://github.com/jupyter-server/jupyter_server/pull/429) ([Zsailer](https://github.com/Zsailer))
- Rename translation function alias [428](https://github.com/jupyter-server/jupyter_server/pull/428) ([sngyo](https://github.com/sngyo))
**Contributors to this release:**
([GitHub contributors page for this release](https://github.com/jupyter-server/jupyter_server/graphs/contributors?from=2021-02-22&to=2021-03-23&type=c))
[afshin](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Aafshin+updated%3A2021-02-22..2021-03-23&type=Issues) | [blink1073](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Ablink1073+updated%3A2021-02-22..2021-03-23&type=Issues) | [codecov-io](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Acodecov-io+updated%3A2021-02-22..2021-03-23&type=Issues) | [jtpio](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Ajtpio+updated%3A2021-02-22..2021-03-23&type=Issues) | [kevin-bates](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Akevin-bates+updated%3A2021-02-22..2021-03-23&type=Issues) | [kiendang](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Akiendang+updated%3A2021-02-22..2021-03-23&type=Issues) | [minrk](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Aminrk+updated%3A2021-02-22..2021-03-23&type=Issues) | [sngyo](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Asngyo+updated%3A2021-02-22..2021-03-23&type=Issues) | [Zsailer](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3AZsailer+updated%3A2021-02-22..2021-03-23&type=Issues)
[1.4.1](https://github.com/jupyter-server/jupyter_server/tree/1.4.1) (2021-02-22)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.4.0...bc252d33de2f647f98d048dc32888f0a83f005ac)
**Merged pull requests:**
- Update README.md [425](https://github.com/jupyter-server/jupyter_server/pull/425) ([BobinMathew](https://github.com/BobinMathew))
- Solve UnboundLocalError in launch_browser() [421](https://github.com/jupyter-server/jupyter_server/pull/421) ([jamesmishra](https://github.com/jamesmishra))
- Add file_to_run to server extension docs [420](https://github.com/jupyter-server/jupyter_server/pull/420) ([Zsailer](https://github.com/Zsailer))
- Remove outdated reference to \_jupyter_server_extension_paths in docs [419](https://github.com/jupyter-server/jupyter_server/pull/419) ([Zsailer](https://github.com/Zsailer))
**Contributors to this release:**
([GitHub contributors page for this release](https://github.com/jupyter-server/jupyter_server/graphs/contributors?from=2021-02-18&to=2021-02-22&type=c))
[jamesmishra](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3Ajamesmishra+updated%3A2021-02-18..2021-02-22&type=Issues) | [Zsailer](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_server+involves%3AZsailer+updated%3A2021-02-18..2021-02-22&type=Issues)
[1.4.0](https://github.com/jupyter-server/jupyter_server/tree/1.4.0) (2021-02-18)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.3.0...HEAD)
**Merged pull requests:**
- Add Tests to Distribution [416](https://github.com/jupyter-server/jupyter_server/pull/416) ([afshin](https://github.com/afshin))
- Enable extensions to control the file_to_run [415](https://github.com/jupyter-server/jupyter_server/pull/415) ([afshin](https://github.com/afshin))
- add missing template for view.html [414](https://github.com/jupyter-server/jupyter_server/pull/414) ([minrk](https://github.com/minrk))
- Remove obsoleted asyncio-patch fixture [412](https://github.com/jupyter-server/jupyter_server/pull/412) ([kevin-bates](https://github.com/kevin-bates))
- Emit deprecation warning on old name [411](https://github.com/jupyter-server/jupyter_server/pull/411) ([fcollonval](https://github.com/fcollonval))
- Correct logging message position [410](https://github.com/jupyter-server/jupyter_server/pull/410) ([fcollonval](https://github.com/fcollonval))
- Update 1.3.0 Changelog to include broken 1.2.3 PRs [408](https://github.com/jupyter-server/jupyter_server/pull/408) ([kevin-bates](https://github.com/kevin-bates))
- \[Gateway\] Track only this server's kernels [407](https://github.com/jupyter-server/jupyter_server/pull/407) ([kevin-bates](https://github.com/kevin-bates))
- Update manager.py: more descriptive warnings when extensions fail to load [396](https://github.com/jupyter-server/jupyter_server/pull/396) ([alberti42](https://github.com/alberti42))
[1.3.0](https://github.com/jupyter-server/jupyter_server/tree/1.3.0) (2021-02-04)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.2.2...HEAD)
**Merged pull requests (includes those from broken 1.2.3 release):**
- Special case ExtensionApp that starts the ServerApp [401](https://github.com/jupyter-server/jupyter_server/pull/401) ([afshin](https://github.com/afshin))
- only use deprecated notebook_dir config if root_dir is not set [400](https://github.com/jupyter-server/jupyter_server/pull/400) ([minrk](https://github.com/minrk))
- Use async kernel manager by default [399](https://github.com/jupyter-server/jupyter_server/pull/399) ([kevin-bates](https://github.com/kevin-bates))
- Revert Session.username default value change [398](https://github.com/jupyter-server/jupyter_server/pull/398) ([mwakaba2](https://github.com/mwakaba2))
- Re-enable default_url in ExtensionApp [393](https://github.com/jupyter-server/jupyter_server/pull/393) ([afshin](https://github.com/afshin))
- Enable notebook ContentsManager in jupyter_server [392](https://github.com/jupyter-server/jupyter_server/pull/392) ([afshin](https://github.com/afshin))
- Use jupyter_server_config.json as config file in the update password api [390](https://github.com/jupyter-server/jupyter_server/pull/390) ([echarles](https://github.com/echarles))
- Increase culling test idle timeout [388](https://github.com/jupyter-server/jupyter_server/pull/388) ([kevin-bates](https://github.com/kevin-bates))
- update changelog for 1.2.2 [387](https://github.com/jupyter-server/jupyter_server/pull/387) ([Zsailer](https://github.com/Zsailer))
[1.2.3](https://github.com/jupyter-server/jupyter_server/tree/1.2.3) (2021-01-29)
This was a broken release and was yanked from PyPI.
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.2.2...HEAD)
**Merged pull requests:**
- Re-enable default_url in ExtensionApp [393](https://github.com/jupyter-server/jupyter_server/pull/393) ([afshin](https://github.com/afshin))
- Enable notebook ContentsManager in jupyter_server [392](https://github.com/jupyter-server/jupyter_server/pull/392) ([afshin](https://github.com/afshin))
- Use jupyter_server_config.json as config file in the update password api [390](https://github.com/jupyter-server/jupyter_server/pull/390) ([echarles](https://github.com/echarles))
- Increase culling test idle timeout [388](https://github.com/jupyter-server/jupyter_server/pull/388) ([kevin-bates](https://github.com/kevin-bates))
- update changelog for 1.2.2 [387](https://github.com/jupyter-server/jupyter_server/pull/387) ([Zsailer](https://github.com/Zsailer))
[1.2.2](https://github.com/jupyter-server/jupyter_server/tree/1.2.2) (2021-01-14)
**Merged pull requests:**
- Apply missing ensure_async to root session handler methods [386](https://github.com/jupyter-server/jupyter_server/pull/386) ([kevin-bates](https://github.com/kevin-bates))
- Update changelog to 1.2.1 [385](https://github.com/jupyter-server/jupyter_server/pull/385) ([Zsailer](https://github.com/Zsailer))
- Fix application exit [384](https://github.com/jupyter-server/jupyter_server/pull/384) ([afshin](https://github.com/afshin))
- Replace secure_write, is_hidden, exists with jupyter_core's [382](https://github.com/jupyter-server/jupyter_server/pull/382) ([kevin-bates](https://github.com/kevin-bates))
- Add --autoreload flag [380](https://github.com/jupyter-server/jupyter_server/pull/380) ([afshin](https://github.com/afshin))
[1.2.1](https://github.com/jupyter-server/jupyter_server/tree/1.2.1) (2021-01-08)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.2.0...1.2.1)
**Merged pull requests:**
- Enable extensions to set debug and open-browser flags [379](https://github.com/jupyter-server/jupyter_server/pull/379) ([afshin](https://github.com/afshin))
- Add reconnection to Gateway [378](https://github.com/jupyter-server/jupyter_server/pull/378) ([oyvsyo](https://github.com/oyvsyo))
[1.2.0](https://github.com/jupyter-server/jupyter_server/tree/1.2.0) (2021-01-07)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.1.4...1.2.0)
**Merged pull requests:**
- Flip default value for open_browser in extensions [377](https://github.com/jupyter-server/jupyter_server/pull/377) ([ajbozarth](https://github.com/ajbozarth))
- Improve Handling of the soft limit on open file handles [376](https://github.com/jupyter-server/jupyter_server/pull/376) ([afshin](https://github.com/afshin))
- Handle open_browser trait in ServerApp and ExtensionApp differently [375](https://github.com/jupyter-server/jupyter_server/pull/375) ([afshin](https://github.com/afshin))
- Add setting to disable redirect file browser launch [374](https://github.com/jupyter-server/jupyter_server/pull/374) ([afshin](https://github.com/afshin))
- Make trust handle use ensure_async [373](https://github.com/jupyter-server/jupyter_server/pull/373) ([vidartf](https://github.com/vidartf))
[1.1.4](https://github.com/jupyter-server/jupyter_server/tree/1.1.4) (2021-01-04)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.1.3...1.1.4)
**Merged pull requests:**
- Update the link to paths documentation [371](https://github.com/jupyter-server/jupyter_server/pull/371) ([krassowski](https://github.com/krassowski))
- IPythonHandler -> JupyterHandler [370](https://github.com/jupyter-server/jupyter_server/pull/370) ([krassowski](https://github.com/krassowski))
- use setuptools find_packages, exclude tests, docs and examples from dist [368](https://github.com/jupyter-server/jupyter_server/pull/368) ([bollwyvl](https://github.com/bollwyvl))
- Update serverapp.py [367](https://github.com/jupyter-server/jupyter_server/pull/367) ([michaelaye](https://github.com/michaelaye))
[1.1.3](https://github.com/jupyter-server/jupyter_server/tree/1.1.3) (2020-12-23)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.1.2...1.1.3)
**Merged pull requests:**
- Culling: ensure last_activity attr exists before use [365](https://github.com/jupyter-server/jupyter_server/pull/365) ([afshin](https://github.com/afshin))
[1.1.2](https://github.com/jupyter-server/jupyter_server/tree/1.1.2) (2020-12-21)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.0.11...1.1.2)
**Merged pull requests:**
- Nudge kernel with info request until we receive IOPub messages [361](https://github.com/jupyter-server/jupyter_server/pull/361) ([SylvainCorlay](https://github.com/SylvainCorlay))
[1.1.1](https://github.com/jupyter-server/jupyter_server/tree/1.1.1) (2020-12-16)
[Full Changelog](https://github.com/jupyter-server/jupyter_server/compare/1.1.0...1.1.1)
**Merged pull requests:**
- Fix: await possible async dir_exists method [363](https://github.com/jupyter-server/jupyter_server/pull/363) ([mwakaba2](https://github.com/mwakaba2))