Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What's new in Django 1.9
Search
Marc Tamlyn
October 20, 2015
Technology
1
190
What's new in Django 1.9
Marc Tamlyn
October 20, 2015
Tweet
Share
More Decks by Marc Tamlyn
See All by Marc Tamlyn
Arousal and Anxiety
mjtamlyn
1
64
Working with Children
mjtamlyn
1
76
Wallingford Castle Archers Incorporation
mjtamlyn
0
190
Observation and Evaluation
mjtamlyn
0
110
Weird and Wonderful things to do with the ORM
mjtamlyn
3
1.4k
An Introduction to Graphene and Relay
mjtamlyn
6
1.2k
Tech Interviews that don't suck
mjtamlyn
4
1.1k
Data driven rendering
mjtamlyn
1
170
Django Development Milestones
mjtamlyn
1
170
Other Decks in Technology
See All in Technology
Lessons from CVE-2025-22869: Memory Debugging and OSS Vulnerability Reporting
vvatanabe
2
110
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
2
320
mruby(PicoRuby)で ファミコン音楽を奏でる
kishima
1
330
見てわかるテスト駆動開発
recruitengineers
PRO
6
2.1k
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
370
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
2
120
DuckDB-Wasmを使って ブラウザ上でRDBMSを動かす
hacusk
1
130
モバイルアプリ研修
recruitengineers
PRO
4
1.4k
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
520
ソフトウェア エンジニアとしての 姿勢と心構え
recruitengineers
PRO
22
11k
「守る」から「進化させる」セキュリティへ ~AWS re:Inforce 2025参加報告~ / AWS re:Inforce 2025 Participation Report
yuj1osm
1
170
Understanding Go GC #coefl_go_jp
bengo4com
1
1.1k
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Embracing the Ebb and Flow
colly
87
4.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Code Reviewing Like a Champion
maltzj
525
40k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
11
1k
Writing Fast Ruby
sferik
628
62k
Transcript
What's new in Django 1.9 Parallel permission passwords?
Django 1.9 • Beta 20th October • RC mid Nov
• Final early December • PLEASE TEST
Password validation • Opt-in AUTH_PASSWORD_VALIDATORS • Min length, common passwords,
user similarity, non-numeric • Framework for your own password validation logic
Password validation class PasswordValidator(object): def __init__(self, **kwargs): pass def validate(self,
password, user=None): if condition(password): raise ValidationError(…) def get_help_text(self): return "Your password must be…" def password_changed(password, user=None): # check not the previous password
Permission Mixins • Similar django-braces and decorators • AccessMixin, LoginRequiredMixin,
PermissionRequiredMixin, and UserPassesTestMixin
Parallel tests • ./manage.py test --parallel • Separate process and
database for each core • Requires tblib • Does not work with Windows or Oracle
On commit hook • transaction.on_commit(func) • Executes func when the
current transaction commits • Good for queueing tasks or email notifications
New admin theme
ORM • JSONField • GDALRasters • Expressions in save() •
Greatest, Least, Now • Transform and Func unified
Forms • CharField now strips whitespace by default • Unicode
slug support • Field ordering
CLI • python -m django • --noinput has --no-input alias
Testing • response.json() • client.force_login(user)
Deprecations and backwards incompatible changes • Python 3.2 and 3.3
dropped • ForeignKey(model, on_delete) • Global timezone adaption • Relative Location header • Implicit __in removed
Final removals • SortedDict • utils.unittest • syncdb • initial_data
• old model loading • manage.py validate • .util modules • request.REQUEST • IPAddressField • import_by_path • FastCGI support • {% url %} in future
Django 1.10 ideas • Improved MSSQL support • Full text
search • Custom indexes • Even more improved expressions • Async worker/communication layer • August 2016
Marc Tamlyn @mjtamlyn photocrowd.com