tldr; The Angular team now uses the team-wide meeting primarily for organizational purposes. The best resource that contains aggregated data about the team's work is available in the public roadmap, which we update before every major release. |
We started sharing the public meeting notes when the team was just a few people. Since then, the Angular team has grown, and we started using the team-wide team meeting primarily for logistical purposes - events and team-wide announcements.
Most of the relevant details about the Angular platform (framework, tooling, and components) are now part of the meetings of the individual subteams. The best resource that contains aggregated data with additional context about the team's work is available in the public roadmap, which we update before each major release.
If there's other information you're interested in and unavailable in public forums, reach out to devrel@angular.io. We'd love to connect and see how to make the information available.
September 20, 2022
- New Design docs, RFCs or NG-Elephant updates
- Doug Parker - partnerships
- Emma Twersky
- Any v15(ish) RFCs please reach out to
- Presubmit Status Service
- Merge Authentication Service
- [Jeremy] Tech Writing
- [Andrew] Harness test migration
September 6, 2022
August 9, 2022
- Doug Parker - Angular Community Partnerships
- Andrew Kushnir Pawel Kozlowski - NgOptimizedImage directive rollout plan
- Alan Agius - Angular Universal Projects
- Mark to host ngConf Family Feud! (Come and support or risk breaking his heart)
- [Joey] GitHub Write permissions changes and tooling
- [Madleina] Angular research discussion
July 19, 2022
- [Madleina] Welcome Simona
- [Minko] ng-conf & participation
- [Minko] Join the tech talk
- [Madleina] Large meeting VC etiquette
- [Alex] Debugging dependency injection
June 14, 2022
- Minimize caretaking
- Reduce the number of meetings
- Actionable issues
- DevRel updates from I/O and v14 release
May 17, 2022
- Angular v14 release photo
- Release scope and updates
May 3, 2022
- New Design docs, RFCs or NG-Elephant updates
- [Doug] Tooling project brainstorm
- [Doug] Search engine optimization
- [Doug] ng generate schematic
- [Doug] Angular Library Localization
- [Minko] Welcome Bob
- [Madleina] Welcome Alan
- [Doug] v14 release
- Feature freeze is tomorrow (May 4th).
- Add anything that needs to be done to the appropriate v14 milestone.
- Escalate to the appropriate lead if anything is at risk.
- All caretakers have been added to #releasing to communicate the process and keep everyone in the loop.
- [Paul] Renaming of main branch
- [Joey] Review changes to ensure no edits after approval
- [Joey] Caretaking team update
- [Miles] CDK components
April 19, 2022
- [Joey] Feature freeze for v14 in two weeks (May 4th).
- Round Robin Sub-Team Updates
- [Alex/Dylan] Typed Forms landing
- [Minko] I/O
- [Minko] ngConf
- [Minko] Docs refactoring demo
March 8, 2022
- New Design docs, RFCs or NG-Elephant updates
- [Doug] User-authored custom diagnostics
- [Doug] CLI dependency checklist
- [Joey/Paul] Automating publishing of material.angular.io
- [Joey] Defining issue/PR lifecycle
- [Joey] Angular size tracking
- Angular v14 progress tracking
- Documentation updates
- DevRel tracking
- [Minko] Micro-frontend updates
- [Emma] I/O updates
- [Mark] Content Casting Call
- [Kristiyan] Host elements discussion
February 8, 2022
- [Andrew] Shared Drive folder & documentation updates
- [Madleina] Remote first
- [Christina] New prioritization process
- [Joey] Security updates
- [Emma] Angular 20% opportunity for Devlibrary
- [Madleina] Black history month
January 25, 2022
- [Doug] v13.2 going out tomorrow.
- Welcome Charles!
- [Alan] Improvements in ng-packagr
- [Doug] Update CLI to RxJS v7
- [Minko/Manish] Survey results
January 11, 2022
- [Joey] - 13.2.0-rc.0 is next Wednesday (Jan 19th, 2022)
- [Doug] v14 deprecations and breaking changes - please add to the tracker.
- [Reminder] US Google Holiday on Monday, January 17, 2022 and US Googlers will be OOO, Kristiyan will be around if you need presubmits.
- [Joey] Update on Caretaking team progress
December 14, 2021
- [Joey] Releases and caretaking for the rest of the year
- [Doug/Joey] As you probably guessed, we're not directly affected by log4j
- [Minko/Jeremy/Joey] AngularJS EOL update
- [Alex] Minor releases and RCs
- Consensus: keep doing RC for minor releases, no separate feature freeze
- [Christina] Reminders - Google Reset Day this Friday, Dec 17, 2021, and this will be the last team meeting for the year. Happy Holidays everyone! :)
November 30, 2021
- [Jessica] Angular logo pics
- [Joey] 13.1 RC
- [Doug] Add items to the v14 release scope
- [Madleina] Holiday season
- [Alex] New project proposal template
- [Doug] Ivy retrospective
November 17, 2021
- [Madleina] EnterpriseNG Tickets (12/2-3)
- [Joey] DevInfra hackathon
- [Madleina] v13 retrospective
- [Igor] Ivy retrospective
- Proposals & design docs
- [Dylan & Alex] Typed Forms
- [Miles] Rolling out MDC components to npm
- [Joey] Release Tooling Checks
November 2, 2021
- [Madleina] US Thanksgiving is coming up
- [Minko] EnterpriseNG join the event!
- New Design docs, RFCs or project updates
- [Doug] Officially support Angular builder development
- [Mark] V13 live stream on Friday, here's how you can help!
- [Alex] v13 recap
- v13.1/v13.2 dates set soonish
- [Jeremy] Material components plans
- [Emma] v13 release photo op
October 19, 2021
- [Madleina] Intro Christina
- [Emma]
- RC specific testing asks
- Documentation that introduces new pages or significant changes please also flag Emma about those changes
- [Mark] Deadline to submit feedback for release blog is TOMORROW
- [Joey] CLABot change/update
- New Design docs, RFCs or project updates
- [Charles] File replacements alternative.
- [Alex/Jess/Andrew K] Towards Optional RxJS in @angular/core
- [Joost] NgSwitch type checking proposal
- [Dave/Alex] Updated Project Proposal Template
- [Jeremy] Tackling large and small projects and individual project load
- Mark: could try alternating between released packed with small improvements and releases with major shifts
- Andrew K: FR triage process is a good place to identify low-effort features. Could try to foster more community contribution for these types of tasks.
- Andrew K: more visibly track the impact:effort ratio
- Doug: want to have more people involved in prioritization
- Alex R: it's good for some folks to have two projects going at a time, one large-scale and small-scale
- Of course this varies from person to person based on work style
October 5, 2021
- [Paul/Igor] APF v13 changes
- [Andrew K] Factory-based APIs cleanup
- [Doug] Dropping IE polyfills migration
- [Minko] DevRel Update
- [Madleina] OKRs !
September 21, 2021
- [Joey] Hacktoberfest 2021
- [Madleina] Design doc roles & expectations
- [Zach] Quick Kythe demo
- [Igor] v13 feature freeze coming up
- [Minko] DevTool Update
- [Joey] Welcome Caretaking Team
- [Madleina] Welcome Deej
- [Madleina] Welcome Sarah
September 7, 2021
- [Doug/AndrewK] Ivy in g3 default flag flip
- [Alex] Tech Talk: Rust WASM compiler by Alex
August 24, 2021
- [Dave] Welcome new writers!
- [Joey] Dev Infra Fix it Week
- New Design docs, RFCs or project updates
- [Pawel] Standalone components / design review invitation. You can also play with the API in stackblitz!
- [Andrew K] Proposal: factory-less APIs cleanup for v13 and Proposal: explore more ergonomic APIs to replace *Ref ones
- [Igor] RFC: JIT compilation use-cases
- [Doug/Alan] RFC: Persistent build cache by default
- [Jeremy & Dave] Documentation-first development
- [Daniel] Final extended template checks demo.
July 27, 2021
- [Madleina] OOO availability notices
- [Jeremy] Reminder about 12.2.0 coming up
- [Jeremy] Reminder (pause to celebrate?) that we can start removing code for IE11 support post 12.2.0
- [Jeremy] Check-in on the v13 release plan (and making sure we have everything captured)
- [Minko] Reminder that folks could volunteer for:
- Writing a blog post for blog.angular.io
- Giving a talk on a community meetup
- Recording a video for our YouTube channel (we need to be back in the office so GDS can help with equipment)
- [Daniel] Extended checks prototype
- [Pete/Joost/George] ES2017 transform prototype
June 29, 2021
- [Minko] Welcome Alex (Aleksander Bodurri)!
- [Doug] Welcome Daniel!
- [Madleina] July 4th heads up
- Off July 5 and 6
- meetings will be canceled for those two days
- We will also skip next week’s releases
- [Alex] Team wins & mini demos
- Joost on ES2017 transforms
- Daniel on his intern starter project
- [Jeremy] Be on the lookout for v13 community contribution opportunities
- [Joey] CI outage update & plans forward
May 5, 2021
- [Jen] Welcome Dylan + Amy!
- [Dave] Documentation updates
- [Jeremy] v12 release
- PRs targeting next and patch need to be merged by Friday, including documentation
- happening on May 18, Angular will be a part of the web track
April 4, 2021
- Feature freeze: April 14th
- April 22nd and 23rd
- Talent Show!!
- Please complete this form to participate
- [Keen] Formalize our policy on compatibility between app and library
- Enforcement is done via peer dep today, but failure to comply only generates warning prior to npm v7
- AI: Document our policy on angular.io
- Discussion: in v12, should we compile libraries in partial format by default?
- AI: Will discuss in follow up meeting
March 23, 2021
- [Cindy] Reminder: Friday 3/26 is a Googler day off (“Google Recharge Day”)
- [Igor] Library authors in v12
- current (problematic) v12 plan:
- CLI is about to remove VE support for apps and libraries
- FW is about to announce VE deprecation
- all @angular/* packages to ship in VE
- 3rd party library authors not interested in Ivy/linker library format because they don't want to be the first to drop VE support
- #1 do nothing
- #2 drop only VE support for apps (keep it for libraries)
- #3 drop VE support from FW (and publish all @angular/* packages in the Ivy format)
- VE deprecated as of v12
- CLI no longer supports building apps with VE in v12
- CLI still supports building libraries with VE in v12
- in v13 VE is no longer supported for libraries
- [Joey] Angular Framework and Tooling together in a repo
- Bazel integration
- Takes an hour for end-to-end testing
- Tooling prefers to test in CI vs published version
- Might introduce a lot of churn (git history -- can this be retained?)
- Google3 sync process is different for both framework and tooling
- Would this lead to merging of components repo as well?
- Doesn’t automatically mean we will/will not merge components
- Web sites would need to be merged
- Docs publishing would be easier
- Would this create a burden on those who merge PRs?
- Conflates the issue count
- Timing?
- Separate project proposal or fast track?
- Ideal opportunity would be to perform the merge after a major release
- Concerns about potential DevEx experience degradation
- Next steps:
- Joey to create a project proposal (following additional discussion)
- [Minko] DevTools access
- Announcement: Angular v12 feature freeze is in 3 weeks (April 14th)
March 9, 2021
- [Jen] Team check-in
- [Jeremy] Angular v12 update: on track for May 12, 2021
- IE11 deprecation + RFC
- Add support for Node v14 (active LTS started Oct 2020) in Angular v12
- Upgrade Node to v14 in FW and CLI,
- Run nightly CI for Node v12
- [Minko] ng-conf participation call for participation
February 2, 2021
- [Minko] ng-conf Angular team interviews: reach out to Minko if you’re interested in doing a pre-recorded 5-min interview. looking for 8-10 folks to participate!
- Expanding the team
December 12, 2020
- [Minko] Angular developer satisfaction surveys
- [Joey] Caretaker
- #caretaker Slack Channel
- Weekly Caretaker Debrief
- Proposal
- No meetings Dec 18 - Jan 4 (team and retrospective meetings have been canceled)
- Caretaking rotations will end on Thursday, December 17th (and resume on January 5th)
- Merging will still continue for FW and CLI
- No merging for Components
December 1, 2020
- [Minko] NGPoland, JSPoland, EnterpriseNG, and NG+
- 5k+ folks viewed 11 talks from the team
- [Minko] ng-conf in 2021
- [Igor] Current release dates targets
- Jan 13, 2021: v11.1
- Feb 10, 2021: v11.2
- May 12, 2021: v12
November 17, 2020
- [Dave] Welcome Teri!
- [Minko/Emma/Mark] v11 release community feedback
- [Jen] Team check-in
October 20, 2020
- Welcome Jessica & Zach!
- [Jen] Team check-in (spreadsheet)
- [Alex/Andrew] Ivy Language Service demo
- [Jen] Angular release schedule/planning update
- v11 = Nov 11
- v11.1 = Jan 13
- v11.2 = Feb 10 (tentative)
- Release calendar
October 6, 2020
- [Jen] Team check-in every 4 weeks
- [Jen] New teammates!
- [Joey] Hacktoberfest
- [Emma] Twitter dashboard
- [Minko] Conference talks and blog posts ✨
- [Cindy] v11 update
- Currently underway: TLs are finalizing scope
- October 14 - feature freeze (next week!)
- October 21: First RC
- October 28: Second RC
- Nov 4: Final RC
- Nov 11: Release
- Reminder: Please don’t forget about documentation
September 22, 2020
- JavaScript LA
- Dutch Angular Meetup
- Firebase Summit
- EnterpriseNG
- ngChina
- ngRome
- NGPoland
September 8, 2020
- [Jules] Meeting kickoff
- [Emma] Community feedback, more community touchpoints
- [Mark] Understanding challenges with the beginner journey for Angular
- ::ng-deep
- Which path to take?
- Examples
- Change detection
- RxJS
- [Minko] Strict mode user feedback
- [Joey] `master` branches are now targeting 11, allowing breaking changes
August 8, 2020
- [Minko] Customer updates
- [Minko] Roadmap feedback
- [Alex] RFC community response
- [Alan] Eliminate Render Blocking Requests RFC proposal
- [Keen] Removal of solution-style tsconfig in v10.1
- August 18th: Intern Project Showcase!
July 28, 2020
- [Stephen] Working on pushing forward more community involvement, feedback
- [Jules] Team check-in
- [Jeremy / Keen] Operation Byelog update
- Alternating 2 week cycles
- Framework has ~450 untriaged GitHub Issues
- Components has ~40 untriaged issues
- Tooling has all issues triaged
- We've been able to categorize issues and fix multiples at a time
- Some issues are help wanted
- PRs Next
- [Alex R] Going to be collecting community feedback on our Ivy for Libraries plans soon
June 16, 2020
- [Jen] Team check-in
- [Keen / Misko] v10
- There was a breaking change in a patch to TypeScript 3.9
- If you want a change to land in the master branch, target master only, or split your PR.
- [Jen] Code reviews should be hard interrupts
- Speed is critical
- Escalate quickly
- [Minko] Looking for ways to support the black community
- [Minko] Angular/AngularJS split in the Stack Overflow Survey
June 3, 2020
- [Jen] Team check-in
- Jeremy will be helping with Framework
- [Jeremy / Stephen] 3 Summer Interns Starting
- [Pawel] Fixit update
- Made progress, great experience for the team
- Touched / reviewed around 2000 issues
- Fixit retrospective
- Components triage took about 10 minutes per issue, framework took more
- [Igor] v10 rc 2 is out
May 19, 2020
- [Jen] Team check-in
- [Joey] DevInfra Update
- Know how many other PRs conflict with a proposed change, measuring "churn" caused by a PR
- More consistent merge tooling
- [Pawel] Fixit starting next week
- [Jen] Roadmap planning
April 21, 2020
- [Jen] Team check-in
- [Jen] v10 Planning Update
March 24, 2020
- [Jen] Team check-in
- [Igor] Framework & CLI v9.1 rc.1 is out, Components v9.2
- [Joey] DevInfra Update
- 11 team speakers, everyone remote, most talks livestreamed
March 10, 2020
- [Igor] v9.1 focused on TypeScript 3.8 & parallel ngcc, then onto 10
February 24, 2020
- [Stephen] v9 still receiving more and more positive feedback
- [Joey] DevInfra Update
- Framework integrations test running via Bazel, making tests faster
- Yarn versioning (ensuring the version of Yarn) deployed across all three main repos
February 10, 2020
- [Igor] v9 Launched!
- [Stephen] v9 success metrics very good
December 2nd, 2019
- [Manu] v9 update
- [Minko] Europe trip report (ngPoland, jsPoland, etc)
- [Vikram] Welcome Wagner - looking at ng deploy, and server side rendering
November 4, 2019
- Triaging issues reported, identifying v9 candidates and blockers
- Uncovered i18n issue that can sometimes break pipes & pluralization
- Following up regarding runtime errors with library authors
- Changes to v9 must be targeted to "master + patch". Changes to v8 will need merge assistance.
- [Joey] DevInfra - Giving feedback to GitHub and CircleCI about our experiences
October 7, 2019
- Several apps now on Ivy (material.angular.io soon, next.angular.io)
- Most of size gap for medium apps closed, simple and complex apps are smaller
- [Stephen] AngularConnect 2019 was a big success, blog post coming soon
- [Alex R] Progress/NativeScript visit went well, several apps working with Ivy + NativeScript
- [Joey] CI outage last week for a few hours. Please rebase your PRs.
September 9, 2019
- [Igor] great work over the last 6 months from team, collaborators, contributors. A huge thank you to everyone!
- [Kara] Ivy Status report
- Runtime performance is on par with view engine, styling refactor merging soon
- CLI Hello world under 100kb
- Looking into compressibility of Ivy (compression characteristics are a little worse)
- [Stephen] Ivy adoption & ngcc - Libraries will be the biggest barrier to Ivy adoption / out of the box success. Tracking libraries and looking at configuration around common library issues and additional education.
- [Jeremy] Components update
- 8.3 builds are faster because we downlevel from es2015 build, instead of doing two builds
- 8.3 New `ng new` experience by Stefanie
- 8.3 Introduced ng deploy command
- 9.0 focused on preparing for Ivy
- Locking issues that are closed and inactive, sorry for the emails!
- Tracking and designing our build & CI processes to increase speed, build times will go up with more code, so we have to keep building smarter
- Charles built lockbot
- [Stephen] Angular Connect is next week! 10 folks from the Google team presenting
August 1, 2019
- Looking into TypeScript/Bazel speed improvement opportunities
- RBE: Linux Works, Mac builds but doesn't yet test
- Investigating Test Driven Development experience, eliminating duplicate file change checks
- [Igor] Starting working towards 9, cutting 9.0.0-next.x releases
- Plan (subject to change):
- Ivy default for Applications (allow opt-out)
- Libraries should still ship View Engine Code to npm
- Framework will ship View Engine Code to npm
- ngcc will translate everything for applications
- We will ngcc es2015 libraries, and then we will downlevel (instead of running ngcc on es5 libraries)
- Planning to remove opt-out in following version
July 15, 2019
- Refer great new GDEs, especially historically underrepresented groups
- Pushing folks to try Ivy and file feedback & reproductions
- [Joey] Introducing our Developer Infrastructure focus
- Migrating tools, framework, and material to Bazel for CI and local development
- Improving Windows developer experience
- Measure build & test performance
July 1, 2019
- [Minko] CLI Survey Results
June 17th, 2019
- Improve Build (differential loading, etc)
- Improved Upgrade Experience ($route/$location/etc)
- Improvements to CLI (Builders, Workspaces, etc)
- Docs updates (deprecations, new getting started)
- ng update success
- [Kara] Ivy Status report, opt-in preview is out, making progress
- Trip Reports
- [Rob] AngularUp
- [Minko] Various Trip Reports
- [Stephen] AngularMix
May 20th, 2019
- [Manu] Cleaning up version 8 milestone
- [Miles] Exploring creating new harnesses to make testing Angular Material and CDK easier
April 8th, 2019
March 25th, 2019
- Introduced new Collaborators (Adam P, Jia Li, Sam J)
- [Manu] Status update
- [Stephen] ~32,000 developer survey results, developers cared most about runtime performance. Happiness and ease of updates both improved. Blog post under development
- [Misko] hackmd.io is an interesting tool for editing and collaborating in markdown
- [Andrew Seguin] Demo of concept: dashboard & query & notification tool for GitHub
February 25th, 2019
- [Igor] We're trying to expand our support for top Angular contributors (called Collaborators) with mentorship
- [Miles] New best practices for breaking / deprecating APIs in Angular
- [Misko] Giving constructive feedback presentation
- [Misko] How CPUs work presentation
- [Manu] Status update
February 11, 2019
February 4, 2019
- Last week's releases went smoothly. (7.2.3, 8.0.0-beta.2, CLI 7.3.0, 7.2.4, Material 7.3)
- Caretaker Escalation Process
- Need to update process to surface productivity issues
- Caretaker needs to own CI instability
- Considering changes to release & branch naming
1/28
- bazel
- stofe-infra / pantheon
- dbm / dcm
- firebase console
- Chrome / Workbox
- Angular Meetup
- [Stephen] DevRel update
- Super quick FYI: It's Sass, not SASS (Jeremy)
- [Igor] retrospective next week
- [Igor] Office decoration proposals review and call for votes
- please +1 on title or voice concerns by tomorrow COB
- [Jeremy/Vivian] Contributor shirt
1/14
- [Igor] The doc about Angular (team-only doc for now, sorry!) and next steps
- [Igor] v8 plans
- [Igor] better @ open-source plans
- [Joey] CircleCI Github Checks vs Github Status, permissions
- [Joey] Splittin Angular Material BUILD rules, deeper imports
- [Igor] Slack notification life-hack
- [Brad] Trip report from ngAtlanta
1/07
- [Kara] Review caretaker process / logging ?
- [Alex] Ivy/Framework productivity updates
- Tooling team focused on productivity problems
- Made strictness checks faster
- Jasmine tests 25% faster
- Prevented new deps on (slow) ng_packages
- Upgraded to Bazel 0.21 with fix for incremental rebuilds
- Jasmine node test stack traces now CLICKABLE in editors
- Next:
- Stack traces from Karma tests
- Switching dev mode to ES2015 so you don't see down-leveled code
- Adding Windows CI so we know of breakages on buildkite (not CircleCI)
- Compile time improvements for tslib - moving ngtsc into library rule to remove angular specific compiler rules
- Splitting big packages for more incremental compilation
- Pullapprove => CodeOwners migration landed PR#27690
- CircleCI Perf plan enabled since early Dec - no more build queues
Travis => CircleCI move PR about to land PR#27937 (30-40min => 10-11min)
- [Vivian] Component overview
- [Miles] Collaboration with MDC (team-only doc for now, sorry!)
- [Igor] v8 release schedule, should we do 7.3 in Feb or skip?
- [Igor] reminder: Various ad-hoc documents and documents presented in the team meeting are not accessible to team@angular.io - this prevents team members from accessing them (e.g. tech writers, tooling team, etc)
- [Igor] Office decoration proposals review and call for proposals (team-only doc, sorry!)
- [Brad] Team offsite
12/17
- Branch Management - Cherry-pickability and Auto Cherry-picking (Joey?)
- v7 Retrospective next actions (Manu)
- 2019 Conference Plans (Stephen)
- Best Practices sharing (Igor)
- Setting up DNS records Documentations (Joey)
- DevRel Updates (Brad/Stephen/Rob/Minko)
12/10
- Put your feedback into the survey ahead of time!
- Calendar invitation has the link to the survey, sent to team email alias
- Primarily working on getting all framework tests running w/ Ivy
- This initial testing step down to diagnosing the last few dozen issues
- Also working on getting Angular Material dev app working. A handful of the simpler components are functional.
- rules_typescript regression
- Identified a regression over the weekend in Bazel's rules_typescript.
- Compilations were not type-checked
- Does not apply to code compiled with the ng_module rule, only ts_library
- Caused by code being omitted inadvertently when synced from Google to GitHub
- Writing good commit messages (Alex R)
- Use a descriptive, accurate title
- Commit messages can be more than one line!
- If changing a behavior, describe both the old and the new behaviors
- Reference bugs and/or task ID from task trackers in the commit body, not the subject.
- Keep commits focused on a single purpose
- Small commits are easier to revert
- Remember that the PR description is not the part of the commit history. Use the PR box for things related to review rather than the change itself.
- FBB team fun event
- Other topics ?
12/3
- Passed 1.5M monthly actives on aio - More than 50% YoY growth!
- Tweet with thank-a-thon starting today
- Site move - pack your boxes by Friday!
- Bowling this friday!
- Ivy plan update
- CircleCI / Engineering productivity update
- Remote caching and remote builds coming soon
11/19
- Focused on getting existing tests passing
- Still some duplication and missing knowledge on efforts
- Igor writing postmortem on outage
- Want to improve our responses in the future
11/12
- AngularConnect Recap
- Ivy Update
- On to v8!
- Overview of merge ideas (jeremy)
- Welcome Minko
11/5
10/29
- Ivy Compiler (AlexR)
- Office move update
- FBB All Hands tomorrow
- Ivy update
- All bits of runtime save i18n have landed
- Getting TestBed to pass -- now 75% green
- Then get Material components working
- Then sync to google and run angular.io running
- Last bit will be getting i18n atop Ivy (just 2 PRs in review to go!)
- NativeScript 5.0 update
- Branch Management Presubmit design (Joey)
10/22
- v7 Celebration
- 7.1 targets (~1mo after 7.0)
- Adding build event outputs as JSON so Angular Console can show progress
- Will use Bazel's build event protocol for this
- Schematics & architect work so you can do ng whatever with --prod
- Fixing perf & build size regressions found with a few customers
- Routing & Forms bits on the list
- Small feature additions...nothing major
- Enabling all tests in Ivy and have a tracking spreadsheet of all tests
- This week resolving gaps in test infrastructure
- Will be asking for more help from the rest of the team to work on integrations at Google and CLI
- Kara presented on the runtime architecture
- Landed big change on Friday making Bazel execution faster both locally and remotely
- Moving more stuff from Travis to Circle (blocked on GitHub outage)
- Improves CI time from 25min to 7min
- Only framework integration tests remain on Travis. Igor will reach out for help.
- CI likely in bad state for rest of today
- Angular Connect (AlexR, Igor, Martin, …)
- Also going to ngPoland/JS Poland, ReactiveConf, Carribian Dev Conf
- V7 being well received by community
10/15
- Angular Mix update
- Ivy Focus Plan
10/8
- V7 update
- CLI in g3 demo
- AngularMix plan
- Hiring jamboree
10/1
- Welcome Andrew (Andrey)
- RC update
- bugs
- doc clean up
- GDE feedback
- targets, labeling, branching
- Vacations for Q4
- Bug / PR process updates
- Ivy update
- Intern Projects
- Martin
- Jeremy
- Keen
- Stephen
- Manu / Andrew
- Hans
- Kara
- Matias
- Rob
- Angular class for Wiz
- Angular in google3 update
- FBB Social
9/17
- Proactive support for Googlers
9/10
- Future of Angular Elements (Rob)
- Angular Labs (Matias)
- DevRel Update (Stephen)
- Long term vision discussion (Brad)
- Program update (Manu)
8/27
- 2019 funding
- DevRel update
- AFIS
- JSConf
- Talked at BlackRock last week
- Presented AngularJS to Angular migration support/tooling at last week's meetup
- Ionic working on ng add support
- Angular Console by Nrwl launched - one-click install for Angular development
- 77 GDEs now!
- Program status update
- Angular Labs update
8/20
8/13
- Angular Labs infrastructure and process (proposal shared with team members - not externally visible)
- Upgrade Support report
- Jaron chat about results on autodeps for Bazel
- Moving next week!
- Your Move Will Take Place the Morning of: Wednesday, 8/22
- Move Time: Between 5am-8am
- Please Be Packed and Powered Down By: 7pm on Tuesday, 8/21
- Boxes & Labels Will Be Delivered By End of day on Monday, 8/20
- Everyone should report to 1225 on 8/23.
7/30
- Moving update - Week 8/20 to 1225 Charleston (December 1225 Crossman)
- DevRel Update
- Rob spoke at Cloud Next with IOT team - the demo worked! :) Video is live.
- Joey worked in the Grab n' Go Loaners booth. App built in Angular! Blog post coming soon.
- Presented remotely to ngHouston about Angular for Designers
- Going to Atlanta today to talk to IBM folks
- Going to JavaScript Atlanta
- A GDE build a smaller replacement for Reflect Metadata polyfill (tho folks don't need it anymore in prod but you have to turn it off manually)
- Rob going to Angular Denver on Wednesday
- Vikram (Universal) and Igor (Panel on tooling and frameworks) presented at Node Summit
- Vikram presents from his NodeSummit preso
7/23
- Security practices (jelbourn)
- DevRel Update (Stephen)
- Rob & Hans went to TransUnion bringing them up to speed on all our best practices - much excitement around the CDK
- Collaborating with Women Techmakers here at Google
- Vikram speaking at NodeSummit and internally with Stephen at MobileWeek
- Several blog posts coming up - one on the Grab 'n Go loaner project
- Rob presenting at Google Cloud Next
- Stephen at ngHouston
- Program Update (Manu)
- Jira demo (Jason/Manu)
- SLO preview (Manu)
- Org change updates (Brad)
7/9
- V6.1 update
- V7 update
- DevRel update
- Brad went to Worker.sh in Austria and talked about Angular Universal
- Rob went to AngularUp in TelAviv. ~600 folks. Did Angular Girls session.
- Had announced AngularJS LTS. Several blog posts hitting now on this.
- Chatted with SAP on MetaUI plans.
- Vscroll
- Drag & drop
- Accessibility improvements
- Ivy - define deliverable
- Pantheon deliverable
- V7 deliverable
- Elements on Ivy
- Tech debt fixit sprint - finish Bazel migration
- CLI in g3
- External enterprises using cloud builds / build farms
- Angular GUI
- Serving solutions
- Announced that we'd go LTS July 1.
- But still we have some work done somehow… :) A few more releases around Web Component support and bug fixes.
- Have bi-weekly chat with adopters
- Have a few enterprises actually using it
- Lazy loading strategy uses Rollup. Also have a Webpack version. Need to invest to get this working for the full solution.
- Focusing on remote build execution (RBE)
- Working on hiring for this
- Now have saucelabs builds working similar to how we do it in g3
- Should dogfood this in the Angular build first
7/2
- DevRel update
- Angular 6.1 planning
- repository unification (devkit --> angular-cli)
- direct webpack configuration file build support (https://github.com/angular/devkit/pull/946)
- `ng update` support for private packages/registries (multiple PRs)
- as well as a large amount of bug fixes
No plans for next minor at this point
6/25
- Demo: Reviewing PRs
- DevRel Update
- Milestones update
- Angular in G3
6/18
- GSX Universal launch imminent
- DevRel
- AngularUp - Israel
- OsConf - Pakistan
- ngJapan - Miles & Kara
- Charter Communications this week w/ 100s of Angular developers
- Added 2 more GDEs
- FluentConf
- Angular Mountain View
- Milestones update
- State management recommendations
- "Ergonomic" but non-serializable, non-resumable
- Must be a tree, not a graph
- So you can serialize
- So you can resume vs replay
- Need to investigate boilerplate reduction options
- Want to get to the point where everything in Angular is lazy loadable
6/11
- Angular community momentum
- Internal adoption growing (600 to 700 projects in the past 2 months)
- Reached our yearly external user goal IN MAY
- ABC funded with 5 new HC
- Gave a talk for ACM Learning Webinar (600 attendees, audience questions here)
- Why Angular (I"m coming from AngularJS/Vue/GWT)
- What should I use for state management?
- How do I get started?
- New GDE: Fabio Biondi
- Government loves Angular - many gvt CTOs leading migrations to Angular
- Alex Eagle is doing a great job with his Early Access Program & Support for companies who want to use Bazel.
- Queries now working!!!
- Nearly done with viewContainerRefs
- Rewriting SVG
- Inheritance for Material, etc. coming soon
- Will land build for ext world in JIT mode coming soon (or has landed?)
- Ngcc kicking off today
- Misko doing state management library research
- Have PR out for ngtsc-JIT that compiles the TODO app
6/4
- Rob at SharePoint north america talking about Elements for CMSs
- At AngularBoston, Angular Contributor Day, and Progress Next last week
- Kendo adding ng add and ng update support
- Getting tests running (vic)
- Fixing memory pressure issue (kara)
- Query support (Pawel/Marc)
- Creating distro (alexr)
- I18n (Olivier)
- SVG namespace (ben)
- Server side rendering
- CLI
- Docs refresh
- Need to eval NgRx current state
- markDirty API
- Testing replacement for fakeAsync
- User latency tracking
- Moved tests and code inside DevKit repo
- Docs in aio
- Extensible builder format
- Workspace library
- CLI in g3
- Refactoring library design review
- Schematics: prompt support
- Ivy
- Community bundling solution
- Possibly make visual updates
- Auto-maintaining build files
- Onboarding big orgs
- Finishing angular migration to Bazel
5/21
- (rob+jeremy) Angular Material, Zones, and Elements
- (miles) Demo: virtual scroll
- (manu) V7 plan
- High level plan done
- Work breakdown to be done this week
- Presented at WeAreDevelopers
- 8 Googlers + 8 Angular Community Members
- Had ~2K attendees in our "Pushing Limits of the Web With Angular"
- Getting good feedback from trainers on simplicity of the new treeshakable providers API
- At ProgressNext show next week
- (alexr) Ivy TODO app -- now with JIT!!!
- (igor) Seattle Visit next week
- Several of us going to work with Google Cloud team on their architecture plans
- Will also visit the TypeScript team to chat about feature requests
5/14
- Retrospective follow up
- Ivy planning
- G3 planning
5/7
- Discuss potentially automatically locking old closed github issues (josephperrott)
- Yes!
- On inactive for >1month
- With message that folks should open new issues and refer to this one if there's a regression
- Should we auto-close open old issues?
- No, we want to do this with humans, not bots
- Much feedback
- Igor + Manu will process and bring to the next Monday meeting for actions
- Piloting Universal with a team
- Getting nodejs working in prod at Google!
- Working on benchmarks
- Will present next week with plans
- Making a plan for CLI at Google
- Helping Pantheon with architecture
- 6.1 will have TS2.8
- Then focus on v7
- Many things we want to do!
- Meeting today to plan ordering of desires
- Virtual scroll
- Drag & drop
- Accessibility improvements
- Many other small improvements (table, etc.)
- Switching package to use Bazel build/test
- Have a strategy doc that Misko will present at next team meeting
- Manu will own breakdown into a work plan to present in 2 weeks
- Presented remotely at Angular Bolivia
- Same for Melbourn
- Adding 5 more GDEs (total now around 65)
- Have meetings with new enterprises every week with 100s of developers each
- GDEs visiting us here
- Doing an Angular public social tonight
- Speaking on Wed at 4:30pm on What's new in Angular + Ivy (Kara + Stephen)
- Have a booth in the Web + Payments tent
- The biggest ngGirls event ever happening this week with 144 attendees
- Rob is at Microsoft Build this week
- Also talking at We Are Developers in Vienna next week (Stephen)
- Caretaking app demo
- Hoodies
4/23
- Recap of ng-conf
- Plan for v6 ship
- CLI - several open blocking issues. Hans working on plan for this.
- 22 open blocking
- Needs more in-depth triage.
- Creating update.angular.io for easy walk thru for folks upgrading
- Docs has a few issues. Most blocking things already merged and ready to go. Just nice to have stuff left.
- CLI team
- NativeScript
- Amadeus
4/2
- [manu] Things to do in v6
- Elements: needs polyfills infra - target for next RC on Wednesday
- ng_package bazel rule needs update to work with Material (and probably others)
- Docs: Elements and tree-shakable providers on track for merge today. Needs some validation on Tour of Heroes to align with CLI generation - targeting Wednesday. Adding an 'Update' page for RC on Wednesday as well.
- CLI pushing RC today.
- [brad] New slide deck format
3/26
- Changing this meeting time
- Moving to 11am Pacific
- No standup on Mondays
- PWA and service worker are done
- Critical RxJS issue - Ben fixed, needs review and merge
- Hoping for RC this week
- Found issues with RxJS - Rob working toward fixes
- RxJS now in g3 with backward compatible patch, now removing patches
- Meeting on the update story to agree on public path to get to 6
- Landing 2 PRs as fixes to angular/angular
- Needs namespacing of private export symbols
- Then need new Angular RC
- ...and we may be good for RC
- Elements in good shape. Possibly needs an update for treeshakable injectors
- Will update Angular to use APF instead of build.sh
- On track for Elements, treeshakable, etc.
- Needs new example for treeshakable
- Angular Survey results
- Googlegeist results
3/12
- [jeremy] ng add demo
- [manu] v6 plans and updates
- [brad] speaking opportunities questions go to stephen
3/5
- [igor] update on caretaker role and responsibilities
- Health of CL and health of g3w
- [misko] review Ivy DX Questions (internal only)
- [manu] v6 plan
- [stephen] ngLarge debrief
- [jeremy] matSelect
2/26
- [brad] fun stuff going on this week
- Partnerships
- ngLarge summit
- Pantheon summit
- Angular + AMP
- [stephen] Survey results
- [igor] how to get breaking changes reviewed and merged - focus on minimal developer pain
- [brad] Ivy process and expanded roadmap
2/12
- V6 updates
- [Andrew] Demo Angular Elements in angular.io
- Googler-only topic
2/5
- [Chuck] Demo Hello World with Ivy
- [Igor] talk about features of V6 (why it is worth it even without Ivy)
- [Igor] talk about elements and their benefits (even without Ivy small size)
- [Igor] Pantheon: New rules of engagement
- [Misko] Ivy status update: #21706
- [Brad] Update from ngAtlanta conference
- Cool new conference - felt very Angular-ey (warm, inviting, open)
- 70% women speakers
- Overall awesome except for starting at 8am! :)
- Much excitement over our plans for Elements, Bazel, and ng update in particular
1/29
- Angular tV6 Sprint updates
- Q1 and 2018 Yearly Goals review
1/22
- Animation design review scheduled for later this week
- v6 plan review
- Sprint planning consolidation
- We are consolidating several sprints plannings into just Framework, Material and CLI
- Current sprints run as planned, consolidation takes effect at the end of the current sprint
1/15
no meeting - holiday
1/8
- Switching Angular repo to work on Bazel to improve our productivity
- Reduces # of tools we use internally vs externally (sharing build config too)
- Dogfooding the ABC project on road to helping other companies use Angular with Bazel
- Angular 2018 developer survey went live!
- Have 3K results on main survey and 1K on extended survey (this is amazing)
- Will keep running for another week
- 2018 conference plan (Stephen)
- Each person gets 1 Angular conference and 1 non-Angular conference
- Send conference desires for Q1/Q2 to Stephen by end of this week
12/18
- Bertrand presentation on UI driven designer UI
- Matias animations demo
- Higher order components
- Triage backlog
- China trip report
12/11
- Dramatically smaller + faster
- Simpler design
- Better incremental compilation - faster builds
- Fully backwards compatible
- Build facade presentation
- Team activities
- Hike
- Board game night
- Night out in SF
- Escape room
- 2018 Conference Policy
- Angular 2017 Survey
12/4
- 5.1 Plan Review
- 2018 Planning
- Hiring
- GitHub bot
- Tree-shaking presentation
11/27
- Caretaker dashboard demo
- Stats review
- 5.1 plan (and what' in 5.2)
- Internal announcements
11/20
- [Manu] Process improvements
- New internal site for releases and process
- Dashboards on issue inflow/outflow + aging
- [Manu] Angular 5.1 release planning
- [Igor] Payload improvements shout out from AC
- [Rob] European Sharepoint Conference report
- Modern Sharepoint on SPFx
- Have been working with Sharepoint team on enabling Angular
- Lots of passion for Angular in the MS community
- Gave a talk in their Keynote on using Angular Elements to embed Angular apps
- Have a repo on the sharepoint org for driving community contributions
- Will have a team working on a CDK-based UI framework for Fabric-UI elements
- Angular Elements turns out to be a fine integration solution for current Sharepoint (pre-SPFx)
- [Jeremy] Caretaking sheet
- Created spreadsheet with appscripts to create a view of what needs attention
- [Igor] Productivity improvements
- Olivier's robot plan draft
- transition to bazel
- (later) CI improvements
- Caretaker spreadsheet
11/13
- Runtime i18n
- Large project build time
- Growing List of issues and bugs
- Angular v5.1 Upcoming
- Material + CDK 5.0 Upcoming
- Misko Presentation - Faster, Smaller, Simpler Angular
- Animations Demo
10/23
- Brad has details on how to give kudos (in cash!) to external contributors
- Future of AngularJS support
- V5 planning
- Have an RC that may make final -- still validating
- Working on a place in the docs with upgrade instructions (v4 -> v5 and v2 -> v5)
- CLI v2 will bump to Angular v5 default
10/16
- Core has some bugs but no blockers
- Assessing issues in RxJS
- CLI has a size regression we're fixing
- Still need service worker integration with CLI for PWA
- Announced Angular Elements and gave demo (publishing Angular apps as a Custom Element to embed in in non-Angular scenarios)
- Announced Angular Labs as label for stuff that is ready to test but whose API may change. Includes:
- ABC
- Component Dev Kit
- Schematics
- Want to make sure team members know it's critical to say when conduct is "not cool"
10/2
- Taze rolled back compiler. Will try to re-land this week.
- Make CLI fast in watch mode. Current tsc ~2sec. There's some bug where they recompute too much.
- PWA is fixing bugs. CLI option is in the works.
- Issues with RxJS.
- Jeremy, Igor, Alex E, Alex R. have reviewed presentations.
- Some others (Brad, Misko) need reviews.
- AngularConnect conference
- Met with MediaCurrent last week showing sub-teams things about Angular
- Scoped Services design review
- Addresses how to lazy load services independent of root module or routes
- Adds new injector 'import' feature that lets you load services by stub/proxy that resolves at runtime when used
Sept 25
- Angular Elements design review
- Angular is currently good at consuming custom elements but there's no way to easily create them from Angular components
- Could serve as lower-surface way to start in Angular by just creating reusable components as custom elements
Sept 18
- V5 plans
- Amadeus visit next week
- Feedback on how Angular works at Amadeus
- Requests for changes and feasibility
- Future plans together
- Regressions in 4.4
- Presentation planning for AngularMix
- Q4 Planning
- Cleanup
- Infrastructure improvements
- Angular Elements
- Runtime i18n
- Error messages
- New arch design (ngState, etc.)
- Docs improvements
- DPG Partnership
- Interns planning season! Get your requests in this week.
- 2018 OpEx planning - DUE NEXT WEEK
Sept 11
- Follow up from team offsite
- Rolled up some feedback into 2018 Strategy Doc
- Social calendar coming soon
- More feedback to process...
- Blockers between here and v5
- Core: Making ngc faster, few other fixes, targeting 2 weeks
- Material: Migrating g3 from md- to mat- & other fixes. Targeting 2 wks to RC
- CLI: Just waiting on faster ngc to see if AOT will be default or optional
- Demo in-browser AOT example (aka AOT Plunkr/CodePen/etc.)
- Goal: Online editor that runs AOT in browser so fokls can create and share Angular apps
- Useful in examples, submitting bug reproductions, etc.
- Using the Monaco editor
- Live compiles in AOT
- Demo stores app source in a gzipped url for sharing securely - no server
- Created as a service we hope gets integrated in other online editors (we don't want to compete)
- Needs: Optimizations, bug fixes, some UX work
- Demo is at edit.ng (not for prime-time, no expectations that this will be for real use)
- Source github.com/adeora/playground
- Demo CLI refactoring prototype
- Goal: read your code, allow querying and transformations across Ts, JavaScript, CSS, etc.
- Code name 'arborist' (ha ha)
- Demonstrated querying functionality across source languages
- Plan is to use inside CLI first to reduce complexity and code size
- Plan to later release as generic functionality for automated refactoring tasks for anyone
- Reviewed design doc for the TransferStore API for Angular Universal
- Low-level API providing a key-value store you set up on the server becomes available in client
- Higher level API for rehydrating a HTTP cache on the client base on data queried on the server using the low-level API
- Providing a richer DOM API on the server using Domino
- Work is in progress, nearly done, but needs security review.
August 28
- Say hi to Joey - new team member on Angular Material
August 14
- Updates on v5 release plans
- PWA support to make building performant apps easier
- Adding Lighthouse support to CLI so you know how you're doing
- AOT by default coming to CLI with new watch mode - requires TS 2.4
- Offsite plans for next week
- Material and Core sync
July 24
- Abhi demo of AOT Playground app
- Web editor for Angular apps that supports AOT in browser
- Switching to make AOT be the only mode for many developers so they can test everything they used to use JIT mode for now in AOT
- One use will be for folks to create minimal reproductions for Angular team to work on with bugs
- Now using Monaco editor from VSCode
- Plan to show externally in early September
- For the first time we're doing resource planning...with Gantt charts!
- Moving team-productivity items to after v5 RC (sigh)
- Material 2 tracking toward Final
- Moving much functionality to the CDK
- Doing full accessibility audit
- Ensuring all components use OnPush and can server-side render
- Audit on API consistency
- All bits tracking GREEN
- Seeing lots of flakes this week
- Maybe linked to the Chrome driver
July 17
- CE Demos
- Ensuring no new features in v5 RC.0
- Offsite reminder: August 24 & 25th
July 10
- Smaller/faster: better optimization, smaller libraries, CLI does PWA by default
- Simpler: Able to use AOT for everything, simpler HTTP, simpler docs
- Easy v4 to v5 update
- Now graphing size for angular.io
- Better JS optimizer in flight for the CLI
- Angular Material branding
- The "Material" team now supports many things
- Material Design components suite
- Component Developers Kit
- Flex Layout engine
- Seems like the team could use a name that's inclusive of the full set of products
- Brad thinks docs should fall under angular.io/docs rather than material.angular.io...TBD
- Angular team going on offsite in August! In Seattle. Details TBD.
June 25
- Did Q3 planning discussion for v5 and surrounding support
- Testing: Destroying fixtures on each test
- Demo: Service worker (arick)
- Demo: Tree (tina)
June 19
- Angular Material: md- vs. mat-
- Currently have mat- prefix to allow Angular Material work with AngularJS Material
- Proposal: move all Angular Material to move to mat-
- Would remove some size
- Could create tooling to auto-upgrade
- Timeline planning for Angular 5
- RC in mid Aug
- Final in mid Sept
- Will publish roadmap for what's included
- Had a release for 4.2 with too many regressions for comfort
June 12
- No meeting due to NO MEETING WEEK
June 5
- Looking to change bootstrapping to drop reflectMetadata
- Working on a platform config to make this possible with size savings
- Working on a null Zone mode that makes upgrade to Angular easier
- Spent last week with Ionic folks improving startup perf
- Reduced app startup by 35% without network
- Still more good things to improve...
- Q3 Planning coming soon
- AMP-PWA!
- Alex R. gave preso on vision for creating support for server-side rendered AMP apps that upgrade to PWAs...
May 29
- No meeting due to holiday
May 22
- I/O conference trip report
- Had two talks
- Great customer interactions
- Still doing bug fixes regularly
- On v1.6.4 - now syncing to Google
- Product is very mature - bugs are either very small or very new/zany ideas
- Doing regular patch release to get updates to folks
- There will be a v1.7 that removes deprecated items and bug fixes
- Released Beta 5 last week
- Included first version of DatePicker
- First PR on DataTable happened
- Did accessibility fixit last week - 7 PRs happened, more in-flight
- Getting more accessibility help from experts that will hit future releases
- Missed updating CDN for AngularJS Material 1.1.4 - coming soon
- Bazel TypeScript rules are now on GitHub for early access folks!
- Shipped demo app using Closure compiler - 34K compressed
- Have a few folks building using this externally
- Using non-Angular libraries is still a pain we need to work on
- Olivier on i18n conversion tool
- Generated IDs were previously fragile due to how we generated them
- Demo'd tool that automates allowing both old-style and new style IDs as easy migration path
- Lots of animation feature goodness just hit in Angular 4.2 RC0
- Biggest request satisfied with this was for query()
- Easy to orchestrate animations in parallel and in sequence across route changes
- Now writing guide for docs site
May 14
- Had a booth next to the TypeScript team - had amazing booth placement
- Rob did two tech talks on Angular - standing room only!
- Lots of big enterprise folks came to talk to us
- Every other question was "how do I upgrade from AngularJS to Angular?"
- Code elimination
- Serving practices
- Lazy loading
May 7
- Alex R on Http and PWA
- Hans on CLI Schematics
- Andrew on DataTable
- Rob on Firebase
- Metrics review (stephen)
- Reactive support (misko)
- New angular.io site - launching soon
- Rewritten in Angular w/ Material, Universal, and as a Progressive Web App
- Now supports previews per GitHub SHA
- New left-hand nav organization to make nav easier
May 1
- Doing 2 talks
- Alex/Jules talking about PWAs and state of Angular
- Stephen/Rob Dodson talking about Angular + Web Component
- Have a codelab built by Kiril on Firebase (built in Angular!)
- Have folks in the sandbox tent to chat w/ Angular team
- Next week we're at Microsoft Build
- Rob doing a theater session
- At a booth in the Microsoft area
- Jules doing a Channel9 session with Anders
- Working with ASP.NET team on templates
- Talking to VS team about integration
April 24
- Docs plan - doing an overhaul over the next few months
- Simpler, more flexible navigation
- Make content less verbose and more focused on task
- Paths for beginner vs intermediate/advanced developers
- Mechanism needed by UIRouter and other use cases
- Currently route token only available in Router package
- Need a general means of code splitting for use beyond Router that works in CLI
- Looking into this now...
- Reactive development in Angular
- Lots of folks using ngRx
- Need docs / best practices and possibly API support to make it easier
- Doing design review soon...
- Bundling/tree shaking tools
- All current tools assume they're the last assembler in the pipeline
- None of the tools are composable (they assume they're last) and none of them do everything we want
- Possibly want a universal bundle format and tools that know how to work on it
April 17
- Need to clean up our page for angularjs 1.x
- Reducing listed versions to last stable in each major (1.2.27, 1.3.17, 1.4.12, 1.5.11, 1.6.4)
- All versions will still be served, but we want to make sure folks use the best sub-version of their chosen version
- Plan is to ship on May 5
- Nullability support and Animations bits are on track
April 10
- Great vibe from folks excited about Angular v4 improvements
- Many banks there with booths by CapitalOne and Schwab.
- Overall just good press
- DevRel had HUNDREDS of conversations
- Animations and Language Service were things folks said they loved
- Docs came up as a barrier for lots of folks. We need to simplify the learning journey.
- Library authoring guide was very well received.
- Starting internal X-team Angular Platform group to contribute to components, build, scaffolding, RPC, etc.
- Q2 OKRs approved, now planning for Q3 to get us to v5.0
March 20
- 4-5 blocking issues
- Most have PRs in flight
- On track for final release on Thursday 3/23
- Estimation and planning happening over the next two weeks
- We can do better at triaging issues
- Will to build internal dashboard to better surface status
- Also plan to release final this Thursday 3/23
- Will default to Angular version 4
- Internal TypeScript conference happening next week
March 13
- Getting secondary owners for all critical components
- Misko now secondary on Forms
- Tobias on language service
- Jason on Router
- Breaking vs user pain impact
- Want to be clearer about what we incorporate into major vs minor releases
- Every change has potential to be breaking -- for example, folks may rely on bugs and fixing that bug may break folks.
- Suggestion is not that we change any commitments, but focus on user impact of every change
- Related: Example of very helpful commit message
- Few outstanding pieces of work
- Reviewing regressions
- Igor doing primary triage
- Component authors should do secondary
March 6
- Fixing final bugs
- Getting doc done
- Just 2 more RCs planned before final
- Material team created infrastructure for doing screenshot diff
- Goal is to prevent visual regressions
- Provides automated CI service that automatically fails when images differ outside the threshold
- Working through ideas
- Want to be locked by beginning of April
February 26
- External reaction to v4 RC.0/1
- Worked hard to eliminate breaking changes from Angular v4
- Both inside Google and externally folks appear to love the RC.
- Highlights for folks include improvement in speed, size, Service Worker support, packaging improvements, all with low to no cost upgrade.
- Now getting feedback from early adopters. Busy fixing a few bugs. Will want broader sets of folks giving feedback later.
- CLI received lots of positive responses as well - coordinating the releases was very well received
- Planning for Angular v5 this week and next.
February 13
- Primary change is new rendering pipeline making apps faster and smaller
- Making bundles work better for Webpack
- Will cut another beta this week and RC.0 next week
- Working on a plan to make better performance for apps on AngularJS and Angular through ngUpgrade by making zones smarter
- Scrolling is currently one of the big areas impacted
- Plan is to throw errors for pathological uses
- New zone release this week to fix some other bits, but doesn't affect public API
- Landed namespacing change so teams can have both v1 and v2 components in the same app
- Rolled this change out across Google without issues
- Planning to go RC.0 right after Angular v4 RC.0
- Created 'eject' button for folks who want to export for Webpack management
- Can now create apps using Angular v4. This will be default when Angular goes to RC.
- Main API to render to string is going in today
- Squashing bugs to get to RC.0
February 6
- It was very cold
- Stephen spoke at AngularMN meetup and GDG DevFest. Demo of upgrade for 2.6 (and how easy it is) won a lot of fans.
- Visited some of our partners/customers and local community. Discussion of pain points and issues.
- RxJS Contributor Days Report
- Igor and Rob attended. Report from discussions.
January 30
- Long Term Support planning
- Have been talking to many enterprises who don't have ability to upgrade as often as we make major releases.
- For these folks, we want to create LTS for AngularJS and Angular so they can feel comfortable deciding on a release to use across their enterprise for a longer period than our release schedule.
- Currently deciding the details of how 'long' long will mean and what types of fixes.
- Last week blogged that we prefer 'Angular' for v2.x+ and 'AngularJS' for v1.x
- We've made this change throughout everywhere we can find in docs, wiki, etc.
- Just pushed new build today v0.8.0
- 50% smaller!
- More stable & reliable
- Get it at @angular/service-worker
- Intention is that this becomes part of Angular CLI in March/April as part of the Angular v4 release
- Had 1 hour outage on angular.io last week
- SSL cert expired
- Wrote a post-mortem
- Reviewing with team tomorrow
January 23
- New process for design docs. Jules gave a quick overview of review process we'll be using moving forward to make doc sharing easier.
- Update on size/performance [Misko]
- Tobias gave an update on his improvements on the view engine for reducing generated code size. Tests in benchpress are looking good. Animations will also be more efficient as a result.
- We're working on closure integration and tree shaking to further optimize compilation of angular code via closure.
- Tight focus on performance, build time, rebuild time, and documentation for 1.0 release to support the next angular major release.
- We'll have a beta branch after that similar to other angular projects.
January 9
- Visited Tokyo and Osaka
- Had good press interviews
- Open source is a new concept in Japan corporations
- Very much wanted docs localization
- Photos (sorry, internal only) https://go/angular-gdd-photos
- Participated in the Google Developer Day events in Beijing and Shanghai. Also ran local codelabs and meetups, organized by Developer PM in China Aaron Zhang. Kara gave her live-coding demo (and introduced it in Chinese).
- We have a lot of users in China! Rooms were packed for our talks (Angular was the second largest track at the conference). It was great to connect to local developers.
- Localization for docs is very important. It was really helpful to have support from local engineering teams on translation at our events.
- New approval and design doc process
- New launch review process
- Q1 Goals
December 19
- Browser polyfills for i18n are in poor shape - buggy and missing features
- Missing features are particularly big in custom formats for dates and such
- There's a better feature set coming in ES2017. Polyfil for this is also buggy.
- We'd like to recommend folks go on the new ES2017 polyfil
- AI: Naomi will reach out to ES2017 champions to see if we can help with the bugs.
- Includes patches and update from RXJS RC to current
- Plan is to release 2.4.0 and 2.4.1 this week
- No planned releases next week due to US holiday schedule
- We've been calling our current project "Angular 2" for two years now
- The "2" is no longer useful as SEMVER means we'll be upgrading our major version 2x / year
- Our hope is that folks just refer to the current project as "Angular" rather than "Angular 4", "Angular 7", etc.
December 12th
- We skipped our December 5th meeting as many folks were traveling
- Much of team is in China or Japan at conferences this week
- Igor's EU trip report
- Folks report majority of new projects in Paris area happening in Angular 2
- Spoke at ng-be about Angular 4 to help folks understand major releases are low-stress events -- blog post with details coming soon
- Ng-be was small but an AMAZING event for everyone involved
- We have a breaking change coming so we can get on TypeScript 2.x (d.ts file format isn't backwards compatible)
- We're skipping Angular 3.0 and going to Angular 4.0 so we can align core with router which is is already on 3.0.
- Working on tooling to automate whatever breaking changes we can, even for obscure cases
- We'll be dropping the version number when talking about Angular
- We've been talking about "Angular 2" for a long time, but since we'll be having 2 major versions per year this no longer makes sense.
November 28th
- Mozilla will lift ban on Angular 1 plugins on December 1st.
- Angular versions 2.2.4 / 2.3.0-rc.0 going out this week
November 21st
- Angular Service Worker Update
- angular/mobile-toolkit beta in 2016
- Moving into angular/angular anticipating @angular/universal
- Building platform-universal (render to string)
- Working on core architecture
- Performance optimizations
- On track for beta in 2016
- Autocomplete is in development pipeline
- Working on hybrid Material 1 & Material 2 on the same page
- @angular/flex-layouts coming soon
November 14th
- CLI Future Plans (in discussion - not official)
- Transitioning to toolkit instead of just command line interface
- Existing projects with large scope needs what we have in the CLI but being called by a different tool chain
- Plan to create a toolkit with local development tools, static analysis, refactoring support, build, code gen, and deployment bits
- New CLI would be a shell over this new toolkit
- IDEs would use the toolkit bits as needed
- Proposed Roadmap:
- CLI 1.0 Final
- Refactor CLI project into SDK tools
- Create refactoring tools (auto-upgraded apps to vX to vX+1)
- Addon support
- Library support
- Custom Templates
- Future work (client/server architecture, etc.)
- Went to Reactive Conf in Bratislava
- Gave talk on how we think about building frameworks and influences on how we created Angular 2
- Talked about Cypress e2e testing framework - Julie/Igor will investigate more vs what we're doing with Selenium
- Many misconceptions about performance
- Folks wonder if we use vDOM (we don't)
- Folks wonder if we're using shadowDOM and think that's why we're fast (it isn't)
- Questions around Angular 3 and what this means (folks worry ng3 will be a big pain migrate - it won't)
- Lots of desire to get Material Design for Angular 2 to stable
- Spoke at Devoxx in Belgium
- Stephen spoke about Mobile
- Igor talked about why folks should consider Angular 2
November 7th
- Focusing on making AoT easier to use, better errors, faster
- Focusing on making Ionic apps faster as a first use case as it pulls in several third party libs
- Creating summaries so folks with build tools can do incremental AoT builds
- VicB will take over Router from VictorS
- Animations are now working with Web Workers
- Misko is restarting Zones work to ensure AsyncAwait works with it
- Going out this week
- Two significant features
- AoT ngUpgrade support - dev guide will lag the release
- Ng2 Router support to help migrate Ng1 apps to Ng2
- Other minor incremental updates going in
- CLI is near RC0
- Validating features and bugs list
- Will release as soon as validated
- Next focused on build time reductions
October 31st
- Project prioritization for 2017
- Speed + size reductions
- Better faster build tooling
- Easier Ahead of Time compile
- Support for all manner of mobile development
October 24th
- Many folks traveling to ngEurope
- Welcome Miles to the Material team
- Firefox blocked extensions written with Angular 1 due to security worries
- This does not appear to be Angular related
- We're working with the Firefox team on convincing them to revert their block
- Angular team hackathon update
- Several team members took two days off to build Angular 2 apps
- Goal was to learn things we'd like to improve in developer workflow
- Kara built a bill splitting app
- Found that preventing default on forms could better
- CSS is still hard :)
- Vic worked on our Periscope app (github issue prioritization tool)
- Pretended we were external folks evaluating widget libraries
- PrimeNG looked very nice, but ended up on ngBootstrap as it works with AoT today
- Created an autocomplete widget to learn how it could work
- Found some minor issues (captured for fixing) but overall was fun
- Wanted to have reusable page objects / mocks from the component library vendors to make testing easier
- Can't get responses to our issues from any channel
- Looking into alternatives
- Doing a team conference roadshow in China late this year
- Going to Beijing, Shanghai and possibly other cities
- Started as community run project, but we're now heavily contributing from Angular core team
- Moving the core platform node part to the angular/angular repo so it stays up to date with any ng2 changes
- Next will be to improve the developer experience and potentially make changes to the platform server
October 17th
Agenda:
- Welcome new team members Tina, Miles and Andrew on Angular Material Team!!!
- What's up with Angular 2 inside google
- Much adoption internally - 50+ teams to date
- Several public teams launching soon
- Adding improvements to ngUpgrade to encompass needs of ng1 projects
- Continue priorities discussion
- Reviewed existing packages and projects we maintain
- Solicited priorities from each package owner
- Summarized needs of developers inside/outside Google
October 9
Agenda
- Whether to provide opt-in ng-input-range for 1.5
- Moving internal teams off Angular 1.4
- Syncing angular 1.6 for internal use (1.6-rc.0 is planned for this week)
October 3
- Angular Connect was awesome!
- Talk videos are up on YouTube. DevRel working on a blog post.
- Lots of interest around AoT, Migration/NgUpgrade, CLI.
- Beta-1 of angular 2.1, and 2.0.2, are current versions. Our next weekly release, 2.1 RC0, is planned for this Wednesday.
- Kicking off issue queue triage this week, Igor to send email to the team with components.
- Hot topics
- Process, Launches, etc (Igor, Vic)
- Closed 300+ obsolete issues post Angular 2 Final
- Considering to use GitHub projects to assist planning and visibility
- Update from DevRel (Jules)
- Overwhelming number of enterprise customer requests have come in since final
- DevRel folks will be on planes for the rest of the year helping folks get going and/or be more successful with Angular 2
- Any team speaking plans need approval from Jules before committing.
- Planning an event in Japan for late this year
September 12
- Pushing a release to NPM tonight with some fixes for folks to try out. Will be promoted to RC7 when we pass validation.
- This addresses Webpack + Lazy loading plus Docs in IDE issues
- Material Design work update for this week:
- Theming
- Design doc for Select
- Strategy to avoid conflicts for apps migrating from Material 1
August 29
- Two blocking issues in RC6
- Detecting invalid elements. Getting working for internal projects and then will be done.
- Repackaging ng2 core. Just upgrading to the latest version of TypeScript but have found errors and will consult with the TypeScript team.
- Core team switches to bringing API docs in line with latest changes
- Mobile team works on bringing version up to work with ahead-of-time compile
August 23
- Caretaker is gatekeeper until we release
- Animations tests found an IE11 memory leak issue introduced by Proxy zones fix. This was resolved late Monday.
- Deprecated API removal: PRs are ready to merge now that IE11 issue is fixed.
- Bundling strategy: Rob still working on this with Misko.
- RXJS upgrade: done in #10648
- I18N: validated now against some test applications. Xliff is in.
- Router: one PR pending to address CanLoad/CanActivate bug.
- NgModule on Large Projects feedback - Rob is fielding questions on #10552
- Validation of RC6 planned for this week.
August 15
- Caretaker is gatekeeper until we release
- No RC6 shipping until all deprecated APIs are removed.
- Peer dependencies issue between zone.js and angular versions. Need a decision on how to communicate or fix. [Igor, Rob]
- G3 is in sync with master. We have 8 PRs pending waiting to merge into master, testing now. (9 including the new zone.js)
- FakeAsync - expect to have fix in master EOD.
- Deprecated API removal: We should do providers first as its own CL, since this is ready. Julie to push next. Julie is preparing a master CL with the final changes to remove API usage from internal users at Google. Will assess Tuesday EOD whether ready to send the last remaining changes out for approval. [Julie R]
- Bundling strategy: Rob has a proposal that needs approval, creating a github issue to describe it. Hoping to make a final call EOD Tuesday.
- RXJS upgrade: working on this today, will land with RC6.
- I18N: xliff and a few ngc improvements pending. Initial support is in master.
- Router: working on RC6 updates for lazy loading, bugfixes.
- Forms: Test updates PR pending.
- API documentation: Need to do a final review pass on all API docs to check on experimental/stable/deprecated status. Also need a plan for updating the plunkers or removing them.
- Hotel deadline today for conferences. Talk to Jules if you got mail from her.
August 8
- Top SHA in master addresses remaining NgModules implementation.
- Caretaker is gatekeeper until we release.
- Ames validation and internal tests pass
- No blocking docs issues
- NgModules is complete in master. This is the last piece of the core API.
- Plan for remaining 2.0 releases after RC5 --
- post-RC5: No further breaking changes in Router, Forms, and I18N before 2.1.
- post-RC5: No further breaking changes in Core before 2.1. New features in animations, I18N, and Forms only. Bugfixes OK.
- RC6: removes all deprecated APIs (planned: at least 1 week from RC5) and we assess I18N and Forms API and Animations for final.
- We'll assess RC6 readiness at next week's meeting.
- CLI - need to determine what will be done on timeline for final.
- Interns
August 1
- The core PRs for the proposal (from last week) are in master
- We are now working out details of lifecycle hooks and testing API for NgModules
- First look at a PR for lifecycle expected this Tuesday Aug 2
- Material: Uncovered an issue related to Zones exposed by NgModules (Julie will help)
- Ionic have an issue related to metadata extractor (fix coming today)
- Firebase typings d.ts issue for Periscope (Rob to help)
- Rob has a PR for Angularfire that should unblock remaining ngc issues
- G3sync should be back in sync with master by Tuesday EOD
- NgFor issue resolved.
- ngc metadata elimination (not blocking) [Alex E]
- Bootstrap best practices final (Igor)
- Sync Tuesday morning.
- We'll have 1.1 released by the end of this week.
- Working with Polymer team on ensuring Polymer/Angular works well together
- Presented at NodeSummit on the Evolution of Javascript
- Rob working on an NgModules post for review
- Jeremy working on a Material update
- Intern blog post is coming
July 25
- Deep dive on NgModules (formerly App Modules)
- Misko presented the current state of the @NgModule proposal. (See doc at http://g.co/ng/modules)
- We are agreed that PR 10164 will soon be ready to merge into master so folks can validate against it.
- Open issues - for discussion via the shared @NgModules doc. Please add them at the bottom or in Docs Comments.
- lifecycle callbacks - should @NgModules have a lifecycle hook at launch? (eg. create and destroy the module, create and destroy root component, router initialization as a case study)
- Deprecation strategy & decision for legacy bootstrap
- Tree shaking
- Naomi to schedule a mid-week check-in for core team on @NgModules
- No RC5 this week. Focus is on proving out @NgModules in master.
- Matias is working on getting NgFor + Animations issue resolved
- Rob working on a blog post on @NgModules
- Validation plan for NgModules. This issue lists items that must pass before @NgModules is final.
- DevRel Update
July 19th
- This is how components get compiled now.
- Defines the metadata Angular needs.
- The old way will be deprecated for a migration period.
- Working to validate the current implementation this week against Ionic, Periscope, Ames, and other apps and libraries we maintain.
- Next SF meetup is August 3rd
- Stephen Fluin talking about App Modules
- D3 with ng2
- Angular Universal
- Ng1 http patterns lighting talk
July 11
- Offline compiler - Material team got app working together. Some difficulties and bugs to handle. Two biggest pain points are CLI not playing well and lack of docs. Cookbook is in the works.
- Router to add warning messages
- CLI to add warning messages (lint)
- Core improved error messages from type checking
- Documentation to prepare folks what they can/can't do
- Sample app that shows how this all works together
- Router - Now v1 feature complete. Lazy loading, guards, etc. works. Release will come after RC5. More docs in the works to help with adoption.
- I18n - Last issue is that we're not yet generating valid xmb files. Now fixing and will be in an upcoming release. Will discsuss docs plan next.
- Security - Now have green-light from Google Security review team.
- Forms - updateValue going into RC5, reset going in later, more features coming. As of RC5, no forms are included by default. Developers will specify the ones they want at bootstrap. Good time to move to the new forms!
- Docs - API docs now have tags that show which are stable/unstable. App modules and testing updates in the works as well as Router and Offline Compiler.
- ID experiemental APIs that must be stable by final
- Update example of using new recommended bootstrapping for RC5
- CLI - Adding WebPack under the hood, support Offline Compiler, blueprints with app module support and new bootstrapping code, and upgrade story to get folks from ng2 vN to ng2 vN+1.
- Validation of working with:
- Mobile
- Material
- Periscope / Ames
- Partners
- google3
June 27
RC4 Milestone - Meeting Tuesday to review status.
- Jeff (VicB) Query Param Encoding
- Igor work on public API cleanup, testing, platform browser
- Kara work on Forms
- Animation issues
- Offline Compiler
- I18N
- Forms
- Beta this week. One remaining change is in flight.
- Alpha-6 this week. One issue with Angular RC3 to resolve first.
- Deep-dive on design and ergonomics this week. Will discuss at the next team meeting.
- Matias is adding Animations
- CSS Parser
- No team meeting July 4th, Holiday in the US.
June 20
- RC2 is released into the world, along with alpha router update, animations, CLI update, and new forms.
- Early feedback from the community is positive
- Some good issues filed on new APIs, working through these now
- Address performance regression and animation issue noted in RC2
- Bug fixes from early RC2 feedback
- Igor is lead
- Release notes: Stephen
- Clarifying the public API surface (what's stable, what's private) and making sure it's correct.
- Testing API improvements
- Forms
- Offline compiler
- Review our APIs for final
- Offline compile
- Testing
- Docs and Dev Guide updates for new APIs (Forms, Security, Router, Offline Compiler)
- Periscope App work this week (our GitHub custom triage app that integrates all aspects of Angular 2). Currently adding features that exercise:
- Animations (Matias)
- Material (Jeremy, needs help from Alex)
- Packaging (Rob)
- I18n (VicB)
- Tests (Misko)
June 13
- Finish minification/rollup work (Igor)
- Get last PR on Forms in (Kara)
- Release notes prep (Stephen)
- Docs to go with
- [goal/non-goal?] Offline compiler CLI - TBD later today.
- Upcoming API improvements based on feedback
- Opt-in to new changes possible in RC2 once this last PR lands
- Alpha shipped last week (see notes below, two blog posts)
- New alpha coming this week with improvements based on community feedback
- Minification/Rollup update (Igor)
- We're going to preserve the approach using platform browser / platform dynamic
- We'll need more tooling to support other approaches. Still in consideration but not for RC2
- Milestones - planning recap (Misko)
- From here to final: RC2 is unblocked, RC3 will focus on stability and closing out few remaining issues in the roadmap
- Post Final focus
- Angular 1 outage and sync
- We pushed a commit that broke the docs site because of flakiness on the CI server
- It’s fixed now by rollback. Pete is working on root cause so it doesn’t happen again.
- Igor needs help on the v1 sync to internal. Alex E volunteers as tribute.
June 6
No-meeting week in our product area, but adding some notes as folks have asked…
- Goal is making it possible for teams with Angular 2 TypeScript projects to use the Template Compiler plus tree shaking to make much smaller/faster deployment builds.
- Ran into issues in several places and needed to back-out some changes to get it working.
- Will release as soon as we can resolve these.
- Making several API/conceptual improvements to Angular 2 Forms for final, described in this doc.
- Latest Router revisions going live in a breaking change this week.
- Adding xliff format to our i18n/localization support.
May 31
- Aiming for next week on Monday
- Reviewing API surface for gaps in docs generation
- Deprecating platformBrowserDynamic
May 23
- Finalizing Router feedback. Now aligning the code.
- Animations landing in core this week. Docs coming with this as well.
- Externally usable support for the template compiler in the next week or so.
- Cleanup on API docs coming together (several private APIs are public when they shouldn't be).
- Focusing on bug burn-down and getting PRs in for final.
- Have been getting on top of the PRs
- Got ~70 in. Down to ~100 open.
- Releasing Alpha 5 this week (tabs, slide toggle, grid list)
- Progressive Web Apps talk went spectacularly. Rob & Alex showed off our end-to-end solution for PWAs. Nearly 7K views on YouTube already.
- Appears that video for Cross Platform Angular 2 by Jules and Kara was lost. Big bummer, but was standing room only in the tent.
- Addy Osmani of the Chrome team developer relations gave a talk on Progressive Web Apps Across All Frameworks. Was generally very good and Angular 2 showed off spectacularly in the performance numbers.
May 16
- Working towards final release across teams
- Critical bit is in getting template compiler and tree-shaking (Rollup.js or jscompiler) working in the Angular CLI
- Core team focused on it this week
- Incorporating feedback from many folks on the latest changes in the release candidate
- Validating the APIs against a growing sample app from the docs
- Talking with the ngRx router folks as they're very similar
- Finished last bit on leave-animations
- Likely to hit MASTER next week
- Next functionality will be on replacing inline-styles with classes and key-frames
May 9
- Ng-conf recap (Naomi, Misko)
- Blog posts coming from Jules and Rob.
- Press/PR queries
- Team retrospective Wednesday
- What's needed for I/O presenters?
- Need a stable release to npm with template compiler latest before I/O
- Alex E has a PR with bugfixes. Review by Vikram / Igor please.
- Closure support would be nice but not blocking. Possibly EOW.
- CLI: Hans needed for some CLI fixes (pair with Jeff)
- Material: Jeremy needed to release with offline compiler support. (pair with Rob)
- Would be nice to resurrect per-SHA releases with new packaging. (Igor)
- Caretaker this week (Igor)
- Martin is caretaker, but in an unfavourable time zone. Chuck J is the caretaker from Wednesday.
- Priority for internal should be landing the template compiler CL.
- There have been some out-of-order SHAs merged in, which complicates the sync.
- Vikram has repackaging tool updates, ts2dart updates, waiting to go in.
- Will resolve the plan for internal user sync mid-week when full team is back in office.
- What should land for the next RC?
- I/O is Wednesday next week, if we want an RC before then.
- Should include new template compiler fixes, web worker support.
- Anyone blocked or urgent?
- Web workers: need to be updated to repackaging. Igor to look into effort / tasks to complete this.
April 25
- We've split the packages to accommodate the new compiler changes
- Now trying to consume them from a real app to test tree shaking
- We can build the app, but tree-shaking via Rollup.js is not working properly
- Working through this right now
- Animations now working with code gen in the new compiler
- Now working on tests and examples
- New router core works, end to end should work by end of the week
- Will need docs updates, will sync up with Ward
- John Papa made several suggestions that we'll address in the next few days
- In last bug bits to get stable version ready
- Working on an upgrade path to take folks from one angular release to the next (or any number of future releases)
- Demo app to be done by EOD tomorrow
- Has App Shell and Service Workers
- Based on Angular-CLI
- Will be creating an app manifest plugin as well
- Will be creating Cookbook Recipes in the docs for folks to build their own
- Have landed changes to API doc styles that make them easier to navigate and use
- Will be adding tags to docs to indicate STABLE vs PREVIEW release status
- Blocked on the repackaging PR landing in master
- Have new async and fakeAsync test wrappers that handle errors much better -- all external folks should be using this now
- Have template caching for tests so you can use fakeAsync with external templates
- Have fixes for test component builder that will hit the next release (not today's)
- Adding helper methods to trigger events better
- Hooking up unit tests with ngZone so we can wait for components to stabilize before we continue in the tests
- Did not release last week as we're working through the new compiler changes
- We will cut a release today
April 18
- Change #1 for offline compile is in MASTER (see last week for details). Coming in this week's release.
- Rob created a minified gzipped version using Rollup.js that weighs in at ~45K -- smaller than Angular 1!
- We believe we can do better using jscompiler...working on this now.
- Tobias now working on Change #2 that will allow more dead code elimination. May be code complete this week.
- Now working on code generation to work with Core Change #1.
- Will be usable after this lands.
- Integrated latest style guide changes. Will track this as it evolves.
- Will be creating optimized deployment build path based on Change #1 this week.
- We'll no longer use bundles from the CLI.
- Will have app and build path that checks all boxes for Progressive Web Apps by end of this week
- Has reasonable fallback for Safari using AppCache until they implement Service Workers
- The smaller framework size makes Time To Interactivity timeline get smaller.
- Working on presentations for ng-conf
- Changes based on new bundling for offline compile
- We'd been assuming folks would have to use bundles to deploy apps.
- Now that we have a real path to payload reduction, we have other options.
- http/2 won't have the performance needed for a while now, so users will need to generate minimal deployment compiles on their own
- Two paths to this are jscompiler and Rollup.js.
- Rollup requires ES6 input. Jscompilier can use TypeScript as input via our Sickle tool.
- Rollup does this via modules and jscompiler uses types.
- We'll request that component authors (Material, Kendo, Bootstrap, Wijmo, Prime Faces, etc.) publish ES6 plus generated metatdata files for developers to make minimal bundles.
- The Angular CLI will be able to build with these inputs and build the right optimal version for developer deployments.
- Writing up the design doc today and will share with component author teams. If you're not one of [Material | Kendo | Bootstrap | Wijmo | Prime Faces] and plan to publish component libaries, please reach out to @bradlygreen on Twitter.
- We will provide tooling (npm module for WebPack, etc.) for our component authors.
- Several guest blog posts coming this week:
- React Native - Marc Laval
- Meteor - Uri Goldshtein
- Auth with JSON Web Tokens - Ryan Chenkie
- We've recently reduced owners for our GitHub repo to just our tech leads. Let us know if you're broken for any reason.
- There are many old repos under angular that we'll be deleting if they haven't had recent activity.
- Folks are unhappy with how long it takes to get their PRs in
- It's invisible to external folks when their PR needs testing against all the Google apps -- this can take some time to resolve
- Maybe need to do a blog post? Add more info to CONTRIBUTING.md?
- Also just need to make this go faster :)
April 11
- Two changes in the works, the rest is bug fixes and minor improvements.
- Change #1: Much of core (compiler, template expressions, dependency injection, change detection) is moving to a code-generation build step. This improves performance yet again and lets developers drop much of the framework's size when deploying.
- Change #2: The way we bootstrap host views is changing so that we can do tree shaking and eliminate dead code in final builds.
- Adding bunch of content before ng-conf
- Adding "why Angular?" Content
- Adding better docs landing page
- Adding several sub-domains like mobile.angular.io, universal., etc.
- Just pushed new developer guides on DI, dynamic forms, component interaction, and component styles
- Style Guide: John Papa is leading style guide development with Minko Gechev and others.
- Angular CLI: Currently implementing the style guide into our blueprints. Will integrate offline compilation next.
- Batarangle (rename pending): Working towards first release of this Chrome dev tool for helping explore/debug Angular 2 apps. Has many neat features like visualization of components, DI, and routes in one integrated graph.
- Language Services: Creating service to provide intellisense for Angular templates. Metadata extraction done. Many more steps required to get it to editors. Chuck has a hacked-up version that uses Angular compiler infrastructure to show errors that we produce in the IDE.
- ngLint: Minko Gechev is building a linter tool to give real time feedback to developers to help them follow the style guide. Integrating with Language Services so developers can get this help on command line and in IDEs.
- Working towards some API changes in time for Final
- Will automatically do code-splitting/lazy loading based on Routes if desired
- Simplifying several concepts and APIs to reduce confusion
- Resolving some critical corner-case bugs
- Near integration time for the new animation library.
- Template string extraction and pluralization directives complete.
- Several more minor steps required to make it usable in real projects.
- Requires completion of Change #1 in Core to work.
- Have first sets of teams shipping to production.
- Working on integration with other developer workflow infrastructure this quarter to complete the full picture.
- Goal is to make it easy for developers to create Progressive Web Apps on Angular 2
- Well under way to show this via a GitHub management app
- Plan to have seed/CLI starter tools by ng-conf and Google I/O presentations
- Will have a mobile.angular.io sub-site to help folks get going
- Will visit tomorrow to chat about a11y and will give a talk on a11y the Mountain View meetup
- Has been working on an a11y cookbook chapter with Almero Steyn
- Angular CLI - Hans working on a design doc for tooling support on migrating to the next version.
April 4
- Staffed our booth 3 days.
- Gave away many shirts. :)
- Awesome conversations with many folks using Angular 1 and Angular 2.
- Brad gave a standing-room-only talk on Cross Platform Apps with Angular 2 (slides)
- Misko and Brad and Anders (TypeScript lead) gave an interview for Channel 9
- Evan and Rado gave two talks on how we're making TypeScript work with our existing Closure compiler
- We can now uglify files for minification
- Will start bundling soon with SystemJS
- GitHub deploy is ready
- Will likely publish an Alpha 2 with lists and inputs today
- Simplifying and refactoring the router
- Merging 'instruction' with 'componentInstruction'
- Will probably drop 'name' and just have URLs so we can automate lazy loading
- Are simplifying aux routes and making them just routes. They will behave in the same way. The default route just has a blank name.
- The canActivate API has been hard as it can't be injected. Moving this to the parent so it can prevent lazy loading of code and you get full access to the injector.
- All Routes are async routes which will aid in lazy loading.
- Now highlights which elements were affected in the last rendering/data update
- Merged graphs to show injectors, routes, and components in one diagram
March 28
- Walk-through final spreadsheet
- Bubbling up changes to the master CHANGELOG
- Last week we shipped three things (router, views and zones) that weren't in the changelog
- How should we fix this?
- Seems to be some kinds of bugs in the CHANGELOG script
- Jeff Cross will look at this in the next caretaker and send backfill features
- Update on directory structure
- Igor bringing folks from Angular team and community together to resolve questions around best practices
- Confirmed plans with everyone
- Focused on the issues
- There are some critical issues, but not too many
- There are some documentation issues that will solve many things
- Need other googler to help do the syncs
March 21
- Angular 2 final tracking doc review
- Went through the milestone work with each contributor
- 5 years ago we created angular-seed for angular 1
- We had not seen large projects built with angular at that point and this set the tone for mistakes many years later in projects around the world
- We want to do much better in angular 2 with a set of guidelines that helps folks structure their apps in a way that scales from starter to giant projects
- Should also provide consistency across projects so folks can immediately know where to look when they come to a new project/job using angular 2
- We're optimizing for developer ergonomics rather than tools
- Working on consolidating to a single version of Angular 1 at Google
- Will be down to 1 version of ng1 at end of the month
- Have a strategy and plan where we'll have STABLE and HEAD for ng1 and ng2
- HEAD will be only for a small whitelist of folks who want to be on the edge
- STABLE will receiive no breaking changes
- We'll have office hours for migrating from STABLE to STABLE+1 twice a year.
March 14
- Rangle.io update on Batarangle
- Now using new API from Angular 2 (beta 8) to publish changes rather than using mutation observers and have gotten much greater performance
- Demonstrated new Router and Injector tree tabs that give visual relationship diagram for your app (super hot!)
- Will meet to talk about building a single visualization with ability to turn on/off components, routes, DI on the same view (Igor Minar with set up)
- Tracking towards Angular 2 final
- Producing the generated code (Tobias)
- Has a PR that's green in JS-land. Need to get it green in Dart-land. Should be a week or two before it can go in.
- Will have a phase-2 that's smaller that re-does bootstrap and component loading.
- Doing the metadata extraction to feed to tools (Chuck)
- Metadata writer for files with d.ts files - green just needs to be merged
- Reader that reads with the TypeScript ASTs and will let folks get this info without running Angular (ng-lint, etc.) - should be done this week
- Combining these into the build tool (Alex Eagle)
- Has some bits but needs Chuck to finish before doing the rest
- Alpha 0 landing this week
- Button, card, checkbox, progress circle, sidenav and toolbar
- Further release will contain more :)
- Kara has a design doc on how we plan to address
- For Material 2, we're thinking we may write our own
- May be possible to use Hammer -- will chat with Misko to talk more
- Working on guidelines for how we publish to NPM
- We need to be coordinated
- If someone is using all of our components, they should do it the same way
- Need to make a decision now
- Researching scoped packages to see if this is the right path
- Pro: We own a namespace that nobody can name-squat on our package names
- Con: The '@' symbol looks strange in imports and may not work for some
- Update from Fluent Conference
- Brad gave a keynote bit. Please watch and give him feedback as it contains our core messages for the year.
- Alex Rickabaugh gave talk on Progressive Web Apps on Angular 2 (video coming)
- Rob Wormald gave talk on Reactive Angular 2
- All talks were very well attended and received much Twitter love afterwards
- Folks seem to have heard our messages and have less worry and FUD about upgrading
- Blog posts: Kara will have first draft this Friday
- Angular Edu (internal)
- Working on an externally sharable version of our Google Angular 2 training
- (Google internal) Teaching in NYC this week, end of the month in SEA, April in MTV, May in NYC and LON in June
- Router - now a guide for using the new router on Angular 1
- Zones
- Want to move Zones to TC39 stage 1
- Will standardize the minimum feature set for v1
- Node folks are wary of things that looked like the domains feature they did so we're backing away from this for now
- Will have fork(), run() and wrap(). Errors will be forwarded to the global error handler.
- Phase 2 will have zone delegates that allow interception of error handling.
- Will work with WHATWG to get the scheduling piece
- TC39 meeting is March 28th
- Method parameter decorators for ES6
- Contributor sent PR to BabelJS
- If they accept, Angular 2 in ES6 will be on par with TypeScript experience
- Working on low-hanging fruit - runtime type checks to give clearer messages
- There are several easy to identify cases when we analyze templates to identify cycles in change detection -- if you query for a child and bind to it, it creates a cycle. Non-obvious, but easy to catch and will be helpful to show errors.
- Have several PRs on the way to improve several situations
March 7
- Supporting focus on polish. What would help?
- Plan ahead for focused work on themes
- Create maturity stages for features
- Build more apps ourselves
- Better system around github issue tracking
- Prioritization app
- Rotation role
- Automation
- In the chute for Angular 2 final
- Have built tracking spreadsheet
- Please update status and add github tracking issue by end of the day
- Plan to publish these as a milestone on github so external folks can track
- Angular 1 caretaker rotation
- Needs more ability of folks who can sync to google (currently only 3 folks can do it)
- Angular 1 release has been blocked on google sync for 1+ month
- The Plan:
- Igor and Matias will work on getting current release out
- Reduce load with automation - Igor to prioritize set of tasks
- Combine sync role with other Angular team caretaker to expand total pool of folks who can release
- Common approach to benchmarking
- Many teams need the same type of benchmark service
- We should consolidate on a common approach
- Biggest issue is creating an environment where others can take the benchmarks and reproduce the results
- Travis is possibly good enough, at least for now
- Goal would be that perf numbers can be compared within a batch
- Will also start a Google Compute Engine
- Also there is webpagetest.org that has normalized machines
- Jeff/Rob will own and report back weekly
- Alex doing one on offline HelloWorld
- Rob doing one on Progressive Web Apps and on Modules
- Jeff to do one on our vision around Mobile
- Matias on our parsers - template, css, html, expression
- Hans on CLI
- Kara on beginner success factors and trackby
- Victor wrote one about advantages of Angular 2 templates
Feb 29th
- Update on Batarangle from the Rangle.io folks
- Cyclic component search
- Clicking on component sets scope in Chrome console in $a
- Redesigned info panel with broken out Properties, Dependencies, Input, and State
- Dependencies have click-through that shows all other components that have the same dependency
- Editable tree view is alpha, but coming along nicely (needs PR from Tobias - merging this week)
- Tobias: Would be nice to be able to jump to instance of the provider
- Can download now from batarangle.io
- Will reach out to Ward to add cookbook/other docs
- Rob: Would love you to reach out to Pascal Precht to integrate visual change detection
- Alex: Would be nice to click on a component and trigger an event AND be able to see who subscribes to events
- Submit issues at https://github.com/rangle/batarangle/issues
- Ward: Would be nice to have a feedback mechanism integrated into the tool as well
- Router tree, component tree, injector tree would be nice to all see visually
- Recap from the planning offsite
- Spent two days talking about long term plans
- One big ambition around making angular 2 future-proof with free upgrades
- Other ideas around greater tool ecosystem visual designers, etc.
- Build infrastructure and continuous improvement
- Last week we spent much time fixing and disabling flaky tests
- We've had much trouble getting to a green PR state
- Planning on a test-jail process to rehabilitate them out of the main build
- Sauce labs is currently VERY flaky
- Seems XHR related - seeing timeouts
- Need to have a way to prioritize PRs for merging
- Problem is that it's hard to make it through the merge queue
- Planning on publishing a milestone containing the burn-down for Angular 2 final by end of this week
- Brian is on vacation - please pull in Naomi/Igor for needed coordination
- There will be incremental changes, but no dramatic breaking changes
- Will get:
- static link checking
- canActivate
- Async module loading through router (though this may happen after final)
- More router transparency
- Other note: UI Router is now working with Angular 2!
- Status of the PR queue and releasing
- Last week we were out for part of it
- Focused on build issues
- We're behind, but are working on merging the backlog this week
- How we're doing (based on analyzing the google crawl of the internet):
- 150K domains now have Angular 1 on them
- 200M documents have Angular 1 in those pages
- ng1 sync and versions in g3
- Have a long running project to move everyone to Angular 1.4
- Making much progress, but now there is Angular 1.5
- Angular 0.9.16 is still in use though! :)
- Desire would be to coniuously upgrade Angular 1 to current stable
- Need to create policy of upgrade expectations
- Also need to time cutover
- Naomi/Igor/Martin will create policy tomorrow
- ngAnimate.x in google3 and One Version Rule maintenance
- Prototoypes hitting angular 2 in a few weeks
- Key features:
- Annotation-level JS DSL
- CSS Parser
- Sequencing
- Web Animations
- Dramatically less code required
- Separates styling from animation sequencing
- Simplifies code
- Lets us make much higher performance animations
- Much less DOM manipulation required
- Fewer recalculation, many fewer function calls
- Can just write staggering bits in JS without touching the static CSS bits
- Supported in Chrome and Firefox
- Edge and Safari require polyfill
- Guarantees compositing that eliminates reflows
- Is static, but our CSS parser lets us do choreography atop it
- May create a smaller replacement for mobile as polyfill is 12K
- No need for getComputedStyle that we do in ng1 animations
- Still working on testing story
- cancelling animations
- knowing when animations are complete
- ability to turn off when doing integration testing
- Tobias: Would be interested in creating an explicit grammar for IDEs and other tools
- Will talk to Marc to see how we can map this to React Native
- Basics should hit master in a few weeks
[Meeting hiatus for 2 weeks for holiday and team planning offsite]
Feb 8th
- Alex started on offline template compilation
- Please take a look at the 10K doc and see if there are items you'd like to take on
- Rob notes that the rollup.js folks got Angular 2 building last week.
- We've set up both Angular and Angular+Hello World sizes with various bundling strategies to track progress
- Angular 1 holding stead with 1M+ developers
- 292K 30-day actives on angular.io docs
- 120K Twitter followers
- 70K 30DA on blog
- spikes in interest in Angular 2 around bigger events like ng-conf and Angular Connect the growth and interest is steadily growing and sustaining even after these events.
- We expanding the Angular Universal effort to support PHP-compatible server-side pre-rendering for existing PHP backends.
- It's early days, but we are making good progress thanks to volunteers from the community.
- Igor met w/ GDEs working on PHP/Drupal integration
- Have several proof of concepts of server-pre-rendering, i18n, etc.
- Meeting with Drupal team later this week to find out what's most important to do next
- So far going very well with no real issues
- Bill T. on TypeScript team built a prototype (background description, implementation) of Angular language services in TypeScript for intellisense supported by tsd
- Goal is to give anyone building an editor/IDE Angular completions/error checking for free when using tsd
- Working with TS team on a plugin API for this so others can do this as well
- Next steps are to port the prototype to the plugin API
- Working on a new approach that uses the Angular compiler as well
- Busses will come from SF and MTV
- First day is around vision, team dynamics, and group dinner, games following
- Second day is for breakouts on sub-teams and long-term plans
- Angular 2's HTTP moving to it's own repo
- Easier to maintain and build tooling around issues if this is a separate repo
- Moving HTTP out of the core repo (thanks to tool from the Dart team!)
- Will publish separately on different schedule from core Angular 2
- We want to fully support building desktop apps via electron in Angular 2
- Rob + Matias will move Rob's electron repo into angular/electron
- Addes 2 new events to angular.io/events (DEVOXX and DotJS)
Feb 1st
- React Native update from Marc
- Have been exploring using React Native with Angular 2
- In all code is in mlaval/poc-angular-react-native
- Built a kitchen sink app to explore features, widgets, components, etc.
- Scroll views, menus, inputs, swipe and other gestures, alerts, Android intents, native platform APIs, integrating web views, etc. all work
- Brought this all together with the ToDo MVC and uses local storage
- React Native exposes events that you'd get on a mobile browser which means that you can use tap, swipe, multi-touch like pinch, pan, or rotate
- Demonstrated native animations like the button ripple effect
- Angular 2's http works giving a nice path to reuse logic from other Angular apps
- Built a simple animation integration with fairly smooth results - 60fps on modern phones
- Did a crazy demo where he put the ToDoMVC app into many bouncing balls in the screen - they all remained responsive
- Summary is that it seems ready to build real applications
- Tobias: did you try the layout animations (native animastions) like CSS3?
- Marc: I've tried it, but not sure if it doesn't work on Android or it just doesn't work. Needs further investigation. But with the rAF feature you can do multiple concurrent animations and it seems quite good.
- Brad: What does it need to be even better?
- Marc: Certainly needs more tests. I'd want to see many higher level components with TypeScript types, etc.
- Jeff: What about iOS?
- Marc: I just got a Mac and can do HelloWorld. The rest shouldn't be a problem. I don't really know the rest you'd need to do on iOS. Needs more investigation.
- Marc: One thing is that not every UI component has a bridge. You will likely need to wrap with native code for things.
- Igor: Would it be possible to create a generic bridge like NativeScript has?
- Marc: I'm not sure.
- Tobias: React Native folks have said they specifically don't want to go down this path for performance reasons. We might do some benchmarking to check it out.
- Brad: It's also fine for this to be a differentiating feature between the two offerings.
- Marc: Next, I'll be building some high level components and extensions to see the developer experience there.
- Feature roadmap won't have anything major.
- Most of the work will be in supporting folks in migration to Angular 2.
- Next week, we have a be ng1 user where we're helping them do the upgrade to ng2. Also doing this with Shopping Express here at Google.
- We'll capture migration guidelines and helpful practices from these.
- There will likely be other tooling we create.
- The new Component Router will be going out this week for ng1.
- Support for the new i18n and Animations are coming as well, but we need to do work on the timeline.
- Angular 2 weekly releases
- We have many issues and pull requests that we need to address.
- Plan is to aggressively merge and fix these.
- We'll start triaging and assigning work after Monday meetings.
- Wednesdays are dedicated to just fixing issues.
- New Angular 2 releases should come out each Wednesday as well.
- Successful on call/caretaker rotations
- Caretakers need to do two roles
- Triage and issue escalation for each team:
- TypeScript
- Core
- Protractor
- CLI
- Material
- Mobile
- Merging and cutting release
- Long term idea is that all projects are run via Angular CLI
- Until then, there will be manual work to do things the same way
- Need to synchronize the labels and rules for triage
- AngularConnect and ngEurope
- They are close together in Sept and Oct
- This is Brad's fault and he's sorry
- Most of the team will be at AngularConnect
- We're moving upstairs in July
- Please respond with availability by Tuesday
Jan 25th
- Demo of the new Dart Dev Compiler for the team
- Meant to improve the developer lifecycle
- Allows for incremental (file-by-file) cycle for non-Dartium browsers
- Compiles to ES6
- Use Babel/TypeScript/Closure compiler if you want compilation to ES5
- Requires code with stricter type checking
- Produces more readable compiled code for when you're debugging
- Goal is to translate templates to multiple languages
- First working on static messages - current work is on extracting static messages in the next two weeks
- We'll generate one version of the application per locale
- Next phase will be for dynamic scenarios like gender and pluralization
- Working to make lazy loading / code splitting work with Component Router to make it free or nearly free based on your routes
- May just be a slight tweak to existing syntax
- Developing in the next few weeks
- Plan is to release RC2 on Wednesday
- Will do 1.5.0 final the following week or a week later if big issues
- Working with Brian to ensure the Component Router works well
- Main feature is the component helper that lets folks build apps in the Angular 2 style and use the Component Router
- Will include overhaul to PhoneCat tutorial to match the component API
- Also includes a dev guide section on component helper
- Finished our first iteration last week
- Published first alpha of AngularFire 2
- Will be presenting this Wednesday at the Modern Web UI meetup
- Created first cut of a reference app to show off Progressive Web App features
- Server rendering
- Service workers
- Web Workers
- HTTP/2
- Plan is to do weekly releases from here to final
Jan 25
- Quick demo of Angular2 on DDC (Dart dev compiler)
Jan 11
- Tim presented "How Angular 2 transformer for Dart works"
- Moved Angular 2 to MIT license based on developer feedback/requests
- Matches most other JS projects
- Details on blog.angularjs.org
- Launch ng2 final (material design components, more perf, less payload, docs, animations, etc.)
- Mobile
- Progressive web apps are blazing and amazing
- Native well integrated with all ng2 ecosystem services
- Both fully integrated with Angular CLI for provisioning, testing, deploying, etc
- Desktop install infrastructure (via electron.js)
- Run Angular within Node, leveraging Web Worker-style separation
- Supporting development workflow within Angular CLI
- Long term performance plans
- Performance should be obviously fast and map very close to what you'd write by hand
- Audacious goal of 10K payload size for Hello, World
- Reboot the web build system
- More to come
- Update on Angular 2 vs Angular 1 traffic
- 1.06M 30-DA on angularjs.org
- 210K 30-DA on angular.io
- 19.8% of visitors now on ng2, up 10% Q/Q
- Some overlap is assumed
- Mary Poppins Chatbot status update
- Goal is to automate all our processes through the robot on Slack/GitHub
- Currently broadcasts build status
- Commands are hosted in github.com/angular/backend-bot
- Material Design for Angular 2
- Core contributors doing design planning
- Will have screenshot diff tool to ensure rendering fidelity between releases
- Much investment in performance test infrastucture
- Working on key deliverables for Angular Material 1 as well
Jan 4
- Post beta.0 (and post ngmaterial 1.0) check-in and what's next? (Brad/Igor)
- Improving speed and size (payload)
- Addressing feedback on the Beta (in particular Forms & Router)
- Material components for ng2
- Expanded TypeScript support inside Google
- Canonical ng2 training materials
- Finishing dev guides and ensuring tests run on all API/example docs
- plus more bits listed below...
- Igor and others created doc on cleanup projects we've always wanted to do
- Goal is to improve our internal productivity
- Some is still left and should get done in the coming months
- Big pending change is npm3 migration (#6067, #6213, npm/npm/#10380)
- Interactive Mary Poppins (Matias)
- We have a useful GitHub robot on Angular 1 called marypoppins
- Want to have this for Angular 2 as well, and even upgrade feature set
- Investigated Hubot and Lita as infrastructure options
- Both seem to have identical features
- Leaning towards Hubot given less code required, direct integration with GitHub, and team familiarity with JS vs Ruby
- Current thinking is that all repetitive tasks should be automated
- Need to ensure that folks on rotation are in MTV
- Cannot be an ad-hoc task, cannot be something done while traveling
- The Journey to 10K (Igor)
- Goal is to get Angular 2 Hello World app in under 10K payload size this year
- Critical for addressing mobile 2G cases
- Angular should be very small for small apps and pay only for what you use for larger apps
- Should give developers clear insight into what import choices mean to final delivery size
- Current size is 164K (angular2.min.js + dependencies)
- Goal for Q1 is to get to ng1 size ~50K
- Current CI system is very poor in many ways
- Wrote spec for an efficient, reliable system
- Some aspects include sharing build artifacts, parallelizing work, coordinating VMs, debugging support, etc.
- Doc to be public soon
- Goal is to optimize Angular core team processes better in 2016 via data analytics
- Currently collecting analytics from our build system, GitHub activity (PR created/merged/comment/etc), and payload size
- Available in graphs within Google Analytics
- Igor/Misko/Brad met with Yehuda and MS folks on TC39 proposals we care about
- Plan is for us to help more on bits we care about in Decorators
- More work coming in support for Zones and Module Loader
- Even faster Angular 2 (Tobias)
- Currently landing several performance optimizations
- Soon landing offline compilation to further improve startup time and reduce payload (don't need to ship the compiler with this)
- Now planning to generate dependency injection as well. Further reduces payload size and improves performance.
- In particular, much faster on VM cold start scenarios.
- Results will be easy to show via generated code as it looks like what one would write by hand.
- Will continue to work via online code generation for developer workflow.
- Debugging should get better as you an now set breakpoints where divs are created. Could even create breakpoints in HTML templates.
- Generates less code than we previously did with the offline compilation so very large apps can scale better. Small apps will pay less.
Dec 7
- keeping remote contributors in the loop (Igor)
- We've been moving quickly in the past few weeks on ng2
- Remote folks have trouble staying current when much info happens in conversation
- We want remote folks to be at the same level as others in the office
- Part of it is to be aggressive when you need attention
- But what about when you don't know you need to know new decisions?
- Julie: would like to see Slack used more aggressively
- Jeff: GitHub is often better than Slack as it withstands time better than Slack
- Igor: It's hard with the many opinions that can occur on GitHub
- Jeff: It's better for documenting rationale rather than discussion. Slack is for the discussion.
- Tobias: I think what's really missing is the bits in the daily standup meeting.
- Targeting Beta 1 or Beta 2
- Solves 95% of issues we have with ngAnimate 1
- Current CSS code is verbose and not reusable
- Can be slow when you have lots of style sheets - currently drives folks to JS-animations
- CSS classes will now just be used for styling. Animation metadata will be specified separately and can be part of the Component (inline or separate file)
- Designed to be compatible with Web Workers
Nov 30
- beta check in (Igor/Brad)
- IE11 issues with flexbox - might affect 1.0 release
- 3 person team formed
- working on prioritizing work
- measuring impact to decide what matters the most
- angular universal and service workers are at the top of the list
- Static vs Dynamic and Toolability (Martin / Tobias)
- Toolability is important for Angular 2
- when creating apis, think - can we statically analyze the code (imperative+declarative) and understand it? If not, tooling will struggle.
- we will soon start working on deamon that will expose all statically analyzable info to IDEs and other tooling
- Benchmarking update (Igor)
- working with Paul Lewis on setting up independent benchmarking infrastructure
- Paul is exploring our benchmarks and benchpress
- Weekly updates for g3 (Igor)
- we'll email updates every week after the ACX meeting
- Ciro (GDE) and other volunteers have picked up some tasks and are making good progress.
- priority is on adding more integrations (karma, protractor, router, etc) and only then look at the long term plan for overall architecture (ember-cli, etc)
Nov 16
- lifecycle hooks - short update (Naomi)
- Wrestling with the options for how to avoid name collisions
- Will resolve this directly after the full team meeting
- Update: Going with 'ng' prefix on APIs to avoid collisions over using ES6 symbols for now. Decision based on simplicity over ultimate correctness given unavailability of symbols in other compile-to-JS languages.
- beta-00 check-in and completion times (Igor)
- Packaging has pending PR. Igor will review and (hopefully) merge tomorrow
- Router: Matias helping Brian land the big refactoring this week.
- Parser: Vic has the PR ready -- merging in the next few hours.
- Lifcycle hooks: TBD later today
- Per-commit npm/pub: Good enough for Beta
- Per-commit sync: Has flaky tests to deal with. Plan is to ignore flakes and have folks fast fix.
- Router binding from host to child: PR ready to go when test for aux route completes.
- Public API review: Will have % complete numbers tomorrow. Targeting 11/17.
- Source maps: Pawel will start tomorrow.
- Bundle/barrel reorganization: 50% complete. Targeting landing on 11/20.
- Router docs: Ward is close on Angular 2 version. Needs Brian to review. Pete will start helping on Angular 1 version.
- RxJS size reduction: Down to only adding 6KB. Want to go lower. Talking with TypeScript and RxJS team about further options.
- Igor will review green PRs and get to merge status.
- we are back to the new normal. when a PR is ready to merge, add the "merge" label.
- igor will review the internal owners file to avoid collisions like we ran into this week.
- GDE summit this week - please accept your RSVP in Cal
Nov 9
Agenda:
- AST Binding Transformations and Route Link DSL
- If you want to write a link in routing you have to write an array of strings+objects
- This binding transformation would let us hook into how change detection builds up data structures and modifies them
- Having it for the Beta would be desirable
- Victor would like to make it more generic so it can handle more cases of parsing many styles of templates
- Alex R. has a prototype of this for generic templating
- Victor thinks it will take a few days
- Making it work with transformers and offline may be tricky
- Need to worry about IDEs. Integrating with our compiler would make this work.
- Victor + Alex will work on this next week.
- Plan is to only expose Router usage initially.
- Deprecated APIs will be removed after Beta
- Now at around 50% towards API documentation goal
- Alex + Igor are assigned
- Moving plunkr examples to the new docs system
Nov 4
Agenda:
- OKR review - focusing on beta, deprioritizing some non-Beta items
- New rotation! THE CARETAKER (Igor/Jeff)
- Spreading system maintenance and monitoring to a rotation program across the whole team
- Rotation will last a week
- We’ll have a set of improvement tasks that you’ll do instead of your regular work
- PR queue: who reviews this week? what about community PRs?
- Need to return to this post-beta
Nov 2
- Short meeting. Real meeting will be Wednesday.
- Igor has a spreadsheet with broad categories of issues in the beta-00 milestone.
- All work should be happening in the beta-00 milestone (if you're working on something else, clarify)
October 26
Agenda:
- When is Beta? The short list is:
- Break into sub-modules so we have a reasonable packaging story
- Finish docs
- Fix bugs
- Core
- Forms
- Router
- Other bits will come ASAP, but not required for beta
- Technical training kickoff
- Building internal Angular 2 training for Google
- TypeScript for internal is a bit tricky due to experimental status
- DanAnh joining group to project manage this
- Meeting tomorrow to kickoff course development
- Will be splitting angular into sub-modules.
- Working to eliminate boilerplate for component imports...mechanism has several options.
- Both will happen for beta.
- Better commit messages => Better change log (Igor)
- Need more descriptive messages
- Will enforce our Angular 1 style
- g3sync update (Igor/Alex)
- 15 failures, 150 SHAs behind (mostly docs)
- Looks good. To be done post-Beta.
- Automating npm publish to do per-commit releases (Igor/Alex)
- Plan to push nightly or hourly releases to npm
- Could happen after Beta
- Nice thing an external contributor could take
October 12
- In the bomb-run for AngularConnect. Getting in last bits folks need for demos.
- Naming change bind() to provider()
- A few Rx changes making clearer APIs
- After alpha-41, no more high-risk changes to MASTER until after AngularConnect
- No breaking changes
- No major refactorings
- Nothing wide-reaching functionality changes
- Fine to do bug fixes
- If you're not sure whether it's ok to check something in, please err on the side of caution and ping Igor to double-check
- Most of team is practicing presentations for next week
- Moving to an API deprecation model for breaking changes
- Building infrastructure to push ng2 to npm (and likely code.angularjs.org) on every green SHA
October 5
- Demo: getting started faster when using TypeScript (Alex Eagle)
- Currently, there’s extra work to get all the typings files (from DefinitelyTyped) and linked in the right places for all editors and tools to understand them
- Changing the way we generate and distribute TypeScript typings
- Users will just have to npm install
- This will get everything set up without having to additionally configure IDE
- ‘tsc --watch’ also ‘just works’
- Also eliminates much work from our release process as we don’t need to generate them or push typings to DefinitelyTyped repo.
- More details on the extra work that will need to happen at https://github.com/alexeagle/angular2-distro/blob/master/README.md
- Module loader - recap and next steps [Victor]
- We’ve been experimenting with alternatives to System.js
- Aiming for zero setup required for users
- Planning to generate a commonjs bundle so folks can much more easily use Webpack
- Julie and Pawel working on this
- In API docs, just need Metadata and Test symbols documented
- In-docs test infrastructure to be merged later today
- Igor working with John Papa and Ward Bell on developer guide bits
- Triage issues from alpha-38 this weekend and prioritize.
- Can we cut an alpha-39 by Wednesday - bugfix only to unblock docs? Plan on alpha-40 for Friday will contain the di binding -> provider rename.
- Work on sync to google internal in parallel. Rado is sync master. Tobias will pair. Priority for internal users is to get the compiler changes in.
- Freeze Angular 2 for Angular Connect docs and demos Friday. No breaking changes after that date. [Naomi to let presenters and docs know]
- After Angular Connect, we will revisit overall release process.
September 28
- Jeff broke the backlog sync of 250+ commits out into 1) rename and 2) other stuff, grouping into smaller chunks.
- We are down to the last 20 issues to clear. Rado and Jeff to sync after the meeting and determine whether to escalate to internal teams for P0 help getting to the bottom of this.
- We accrued a backlog by handing off work from week to week. In future, if we can't sync at the end of a week, declare a team P0 until it is resolved. This blocks handoff.
- Release Process (Release Notes, Documentation Updates)
- Customers (internal and external) are asking for more detail on what has changed between versions.
- Currently, we provide a changelog, but it's a lot for an end-user to digest. Our commit messages could be more focused on end-users. Many breaking change messages in our changelog are not actionable (not clear to the user what they should to in response to this change). Jules is also open to providing a curated update per release later in the year.
- Some way of marking things as deprecated might help with the sync. Needs discussion. Rob prototyped a decorator that we can use to mark things as deprecated. Would this be helpful to submit as a PR? Adding decorators has a runtime impact for TypeScript. A comment would be simpler and also show up in documentation.
- Once we are back in sync (not 250+ commits behind), or if we have the ability to deprecate, it may be reasonable to ask the Google owner of a breaking change to make the fix for users inside Google as a CL.
- Triage of Issues Status: We are 100+ issues behind for triage. Need a more scalable process. Revisit with Misko.
- Animation DSL Status (Misko, Brad and Rob are missing … This will happen next week)
- Docs Progress Update
- Status of DevDocs/API and where we need help
- > 50% done, but still lots to do.
- Igor, Victor, Alex R, Matias, Rob W, working on docs this week.
- Brian is working on examples with the new tooling from Jay and Ward. Brian to update the API guide with instructions. This is similar to how it works in Angular 1, examples are separate files that can be tested. Not yet possible to provide as an interactive example, but on the road map.
- New API Overview UI Design (Naomi showed early mocks for a map of Angular 2)
- Cheatsheet - Naomi would like to finalise this week so we can work on design. Victor and Misko needed to review.
- Grading of Q3 2015 Quarterly Goals, and new goals for Q4 and overall 2016 (draft)
- Martin and Alex, need to update grades on TypeScript effort.
September 21
- Originally, we used Traceur to transpile from AtScript (now TypeScript) to JS & Dart
- After much hard work, it is gone from our codebase
- Fully using TypeScript for all transpilation
- We may move from es6shim to core.js for ES6 bits (As do TypeScript & Babel)
- Many core team folks focused on API docs last week
- 8% complete, additional 12% started
- Fixed many docs infrastructure issues first
- d.ts file wasn’t inline with the public API docs
- fixed public/private incorrect bits
- still many issues around how we present content we create content (creating links, function signatures, etc.)
- Came out with a list of issues we should process this week
- Want to have a good set in place for AngularConnect
- Have completed some of the biggest API docs
- Will prioritize APIs users hit in the first minutes of development
- Several of the first concept guides will hit then as well
- Goal is to dramatically improve startup time and reduce Angular 2 size
- Have created offline compiler pipeline tool
- Goal is to land this week in core
- Need to create tool that integrates with Angular 2 toolkit/CLI
September 14
- API Docs Authoring Sprint
- Brad has an API Author’s Doc which describes how to write API docs
- Rob Wormald to share his plunker setup with TypeScript loader and SystemJS
- Examples should be copy-pastable (including imports)
- Examples should be in CodePen; copy links into content; later we will single-click link to the CodePen example
- Version of Angular used in examples should be documented
- Team members will go through spreadsheet and self-assign pieces of API that make sense to them.
- Would be nice to throw TypeScript loader on code.angularjs.org (done)
- How will we test changes in a real UI as we go?
- Checkout angular.io, and symlink or copy built files from angular/dist
- Brian will make this easy and amazing
- Brian will temporarily document the process without the “ideal” solution
- Will create a special branch to push docs to
August 31
- Transitioning from builtwith.angularjs.org to madewithangular.com
- Handing off curation and ownership of the Angular showpiece site to community-run madewith.angular.com. It's more current, and has good momentum.
- We'll deprecate the old site and direct folks to it. All the content still lives in the github repository.
- Blog post is coming. Brad will write it and introduce Jules to the folks involved.
- The team reviewed the angular 2 developer survey results.
- Some enterprise folks had difficulty accessing the survey from behind firewalls.
- Blog post will be out next week with the results.
- Continuing vision discussion. Brad presented.
- The importance of focus on "the first 20 min" for a new developer
- Set up a team meeting for next week to think through: what are the clear tasks we want to prioritize to achieve user happiness by beta? [naomi]
- Beyond that, what are the critical overall visionary goals for angular?
- How do we measure success against our stated goals?
- Developer productivity
- Contributor experience
- Dart output quality
- Need conditional compilation (proposal coming) to get the code looking idiomatic for both language
- Some patterns that won’t compile cleanly can be caught in tslint
- Need to add this to our quarterly goals
- Need to document things we shouldn’t do in TS (top-level execution blocks, const semantics, etc.)
- Need feedback from external contributors on what they need to be successful
- Might be the right solution to let folks contribute in either TypeScript or Dart and have core team members do the porting
- Coordinating with Angular 1 changes
- Keeping Angular Material in sync with AngularJS causing non-trivial friction
- Will pin Material to AngularJS previous version (n-1)
- Going to add tests on AngularJS to catch more of the regressions
- Large raft of (minor) breaking changes we’ve made last week to rename things.
- Naming Conventions: TypeScript has set of naming conventions we’ll follow for the public API
- Breaking changes: Updated all API doc source to match these conventions. This was the major breaking change. Will be pushed to the API docs on angular.io soon.
- Want to get to “no more breaking changes in core” very soon
- This does not include http, router, etc.
- This is criteria for beta
- We still have Observable/Rx changes that we know are coming
- Sugar: Making many updates for more ergonomic/less boilerplate-y APIs to ensure better developer experience
- Upgrade: Can now bootstrap Angular 2 inside Angular 1. Next step is to do the other way around. Will then work on transclusion and injection.
- Presubmit: We now have presubmit details on our dashboard to make sure we stay on top of it
- Working on an Angular 2 Cheat Sheet - anything missing? Please comment.
- More sections specced out than we have authors for. Need help in the next 2 weeks. Specifically, these sections are outlined but still need owners:
- Reusable components,
- Component communication,
- Navigation architecture (Router),
- Server communication,
- Debugging,
- Bootstrapping,
- Attribute directives.
- Ping Naomi if you can help.
- Introduced use cases for Angular 2 last week
- Will break down most important ones, do scoring
- Testing: Have been working with Ward Bell on our testing story...many issues we’ve worked through. Have filed many issues related to this so we can make this better
- Animations: Rob + Matias doing Animations for Angular 2. First version lands this week.
- Router: Brian working on managing multiple history stacks. Working with Ionic folks on this.
- Bundling: Jeff aligning publishing with NPM and breaking Angular 2 into smaller sets. Have some remaining bootstrap and Dart issues to work through.
- Can now run Blaze build with TypeScript library
- Goal is to have Closure compiler be able to consume output
- Shadow DOM spec has changed to support the slot proposal.
- Blink (Chrome) will support both old and new syntax
- This change is easier to implement for browser vendors.
- Proposing that we support both ngContent and add ngSlot to support Shadow DOM for folks who want it.
August 24
- Angular 2 Roadmap and Vision
- Reviewed for team as we head for Angular 2 beta
- Values: developer productivity and community
- Strategies:
- Angular1: low boilerplate, structure, testability
- Angular2: fast by default, simpler, remove architectural limits, mobile as first-class
- Will cover in detail at AngularConnect conference in October (London)
- A plan for ts2dart tooling
- Dart is evolving, and ts2dart should evolve with it
- We should be easing the burden of contributors who aren’t familiar with the dart build process
- Dart output should be idiomatic
- Revisit subteam alignments
- New teams were: core, application, material, tooling
- Going fine, let’s keep trying it out
- focusing on property renaming to improve minification over uglify
- first target is the ts2dart tool of about 2K LOC
- not currently renaming external symbols or class names
- Results of running both tsMinify and uglify against ts2Dart sample result in 56K vs original 72K (also uglified) for a 22% space savings!
- Final code will be gzipped as well
- Next target will be running it on Angular 2
- Maybe pick time near holidays to focus on non-feature work
- Other topics could be tooling, process, docs, etc.
- Template compilation is our next target to make Angular faster
- In prototype, compilation got 8x faster and bootstrap (compilation + view creation) got 3x faster
- This prototype turns compile to a build-step
- Means production version of Angular could not ship the compiler code and become much smaller
- Offline compiler will also find errors and report them to command line or IDEs
- Igor and others on the team have organized many “user journeys” describing how we expect users to interact with Angular 2.
- Team members are to review and add/edit journeys
- Sub-teams will use journeys as a means of communicating what’s being worked on weekly/quarterly
August 17
- Core team speakers and talks have been decided.
- Plans for browser support on Angular 2
- Proposing to add full suite of browsers to CI
- List of what we’d support:
- Firefox
- Safari (desktop + mobile)
- IE11, 10, 9
- Edge
- Chrome (desktop + mobile)
- Android (try 4.1.x+, fall back to Chrome if impossible)
- [Jeff] Review feedback and experiences from Utah hack night
- Aaron Frost sponsored an Angular 2 hack day in Utah last week
- Focus was on uncovering usability improvements needed for Angular 2 Beta
- Jeff and Misko joined remotely to help
- Themes of issues:
- Knowing how to use decorators properly
- Template syntax confusion (binding properties, bubbling, etc.)
- Quality of error messages
- John Papa likely to do a similar hack night
- Another hack day for ourselves to build Angular 2 apps
- Want to build deeper apps using many components working together
- Focus on the testing story completeness and ease-of-use
- Build for mobile
- Happening Sept. 10-11
- Our team is big, we should have some more focused sub-teams.
- Stand-ups are a lot of people, a lot of discussion isn’t relevant to everyone
- Our full team meeting should be focused on cross-cutting design reviews
- Possible teams
- Angular 1
- Internal google productivity
- Core (DI, compile, render, change detection, zones)
- Application (router, animations, i18n, persistence)
- Tools (various Dart tools, ts2dart, CLI, toolkit, etc.)
- Docs
- Material
- Next step: teams nominate their representative / rotation
- Stand-ups still happen at 11, but in sub-teams
- Brad to publish first list of who is in which team
- Next set of design reviews
- Pipes
- Persistence plans
- CLI
- Docs
- On push detectors
- Compiler overview + offline compile plans
- ng2 google3 report: where we are today
- Main requests:
- Features needed soon: animations, i18n
- New features: User action timing tracking
- Wants more focus on reducing start-up time, particularly for mobile
August 10
- Process for managing issues for angular/zone.js, and allocating people/time to a few critical pending issues [Brian]
- Possibly pull the repo into the Angular 2 core process
- Misko will do the work to make zone.js issues show up in core dashboard
- Brian will document how this will work for zone.js contributors
- We'll add the process steps to TRIAGE_AND_LABELS.md
- AngularConnect planning for flights, talks, etc.
- Get your flights this week!
- May spend a few days with Amadaeus in France the following week
- Need to create topic list to get to who we’ll need
- Brad will send proposed list of talk updates for your reviewing pleasure this week
- Check-in on strategic milestones from last week
- Known breaking changes for Angular 2 Beta are now on hotlist (Pipes is the last big bit)
- Misko still to put sugaring bits into a hotlist
- Jeff will share the hack night recipe from Aaron Frost
- Check-in on this week's sync to google3
- Jeremy will run trial submit today
- Have started work on one-page cheat-sheet for Angular 2: PLEASE REVIEW!
- Brad requests an Angular 1 to Angular 2 cheatsheet as well
- Presentation on plans for Animation
- Design doc
- Matias and Rob think they THE have the core idea for ngAnimate next gen
- Want to solve core complexity and allow animation sequencing
- Adds a timeline system and improves reusability and much performance improvement
- CSS animations brings many problems:
- inheritance collision and cascade
- no sequencing
- too verbose
- can’t test it
- creates delay while we parse CSS
- want to seamlessly define some animations as JS as well
- Solving these requires that we drive via metadata instead of CSS
- Plan is to drive this from an animations.json file in the development project
- can support at a decorator or JS object as well
- CSS no just has to specify end states, not how transitions work
- Now Angular doesn’t have to do computations resulting in greater performance
- Other benefits:
- Great for generation by tooling
- Likely will work great for NativeScript/React Native as well
August 3
- Strategic milestone goals post-core [Brad/Igor/Misko/team]
- Reduce compile time performance
- Stabilizing core
- Breaking changes should go onto hotlist
- We have a goal of releasing breaking changes on lower frequency
- Want to have several weeks of no breaking changes before beta
- All breaking changes need group discussion
- Sugaring - developer ergonomics
- Misko will start a hotlist for this to burn down
- Needs input from community on what is hard
- Documentation authors are an initial source of input (Naomi)
- Ask GDE partners (buddies)
- Request general community to file bugs that will end up on hotlist (Brad)
- Will have full core team focus on this after breaking hotlist done - thinking September
- Run dgeni as part of our test process on check-in
- Run tests against examples in docs
- Currently have a group working on infrastructure to generate docs with tests for ES5, TypeScript, and Dart
- Misko just checked in WTF support - would like folks to start using it and give feedback on what is missing - Ionic team will start
- Start-up time needs most attention
- Compiler optimization
- Moving compile to a build step
- Safari seems particularly slow on startup
- Making a recommendation on a performant build strategy
- Reducing size of Angular 2.
- Low hanging fruit will be replacing Rx 2 with RxNext with few combinators or completely unbundling it
- Post-beta can look into more processing steps to remove weight
- Build (Igor and Alex E own)
- Want to have a one-click experience for developers to install all necessary tools and configure build process through the CLI
- Currently CLI supports scaffolding and build for Hello, World example
- CLI has trouble with System.register compilation
- Next steps will be support for IDE intellisense
- Need to look into sourcemap support
- Support for dev vs production
- Will talk with Ionic tomorrow
- Need to document the magic incantations that the CLI does for folks who need to do things themselves
- Need to solidify module system recommendations and remove Traceur
- will hit soon -- easily available for beta
- working through this schedule
- http service will be solid for beta
- Presubmit queue; Build times; adding iOS and Safari to CI
- New process is that you should not push to master
- Push a branch named 'presubmit-SOMETHING' where SOMETHING is anything unique. Recommend something like 'GITHUBUSERNAME-SUBMITTOPIC' so the result would be like 'presubmit-bradlygreen-supercoolthing'.
- Alex will add this to COMMITTERS.md and merge these with TRIAGE and LABELS
- Alex working with maintainer of http://buildtimetrend.herokuapp.com/dashboard/angular/angular/index.html so we can tell that the build has gotten slower/flakier and fix.
- Check-in on reaching out to our GDE buddies
- Time to reach out to your buddy!
- Topics:
- Get input on sugaring needs in Angular 2
- Tell the upgrade story
- Original idea was to make Angular 1 and 2 syntax match
- Now plan is that we let developers mix and match components to allow incremental upgrade
- Uses we'll support
- Angular 2 component can live inside A1 via auto-generated facades and the inverse
- A2 can transclude A1 and the inverse
- Need to bridge dependency injection
- Digest cycle of A1 interleaves change detection of A2
- Plan to have this done for Beta
- Angular 2 docs infrastructure
- Top priority this week are to get pieces we need to test examples in dev guide as part of release
- Creating guidelines for what a finished API doc means
- Jason demonstrated running an Angular app running in a web worker
- Example did image effects and demonstrated the frame rate remaining at 60fps while doing the image processing
- Call for comments Issue #3458: modules & packages [Jeff]
- Post-meeting design discussion on ng-material 2 [Jeremy]
July 27
- Forms - verifying basic data types needs pair on issue 2962 [caitp + vsavkin will pair]
- [Jeff & Misko] the importance of green master branch/post-mortem
- As of last week, we changed our tests to remove default tests against dart on every PR (although we test before commit to master). We only run these tests when the PR is merged to master. This is a problem when issues
- Yegor's PR was green but on merge broke master.
- We may also break the build when two green PRs produce a logical collision.
- Process Resolution:
- For any PR you want to merge, check to see if master is green. Never push if master is red.
- If master is red, and the owner of the PR can't quickly unblock you (e.g. on a late Friday commit) do a git revert SHAs to undo the prior commit(s). File an issue and follow up with the PR owner to make sure it is not dropped later.
- OK to check in late Friday commits since anyone can git revert if stuck.
- We should set up a submit queue that runs all tests and pushes when green. [Misko]
- Keeping the build time fast makes development easier. We need continuous performance tracking for our build so that when we check in a change, we can tell if it's substantially increasing the build time. Alex E has a PR to add this to our dashboard.
- [Alex & Naomi] Sync into google
- per-SHA sync is still an unsolved problem. Alex E has been working on some dashboards to make the gap between github and google-internal more visible, and make it easier to track which SHA has broken internal tests.
- Externally, you can see where the latest internal sync is: [https://github.com/angular/angular/compare/g3sync...master ]
- Router status - hoping to land auxiliary routes in alpha-34. some bug fixes.
- Forms status - no major changes this past week. A few bug fixes.
- DI status - one more round of renaming is coming in DI per early adopter feedback. breaking change but easy fixes in alpha-34.
- Change detection - better error messages. working on code size this week.
- Animations status - compatibility issues with angular material due to animations in 1.4 are resolved. some ongoing bug fixes last week.
- Material status
- more components for angular 2 coming, and some design docs this week.
- closing out our 0.10.1 release for material. first look at datepicker will be available in master later this week, right after 0.10.1 closes.
- a few blocking issues in angular 2, will add these to alpha-35 todo list [misko/jeremy/naomi]
- We now generate types with dgeni and get them posted to definitely typed.
- Some issues with router typings. Alex E filed an issue.
- CommonJS/SystemJS as a path for removing Traceur still unresolved. Alex and Ian to dig into this later in the week (after sync is handed off to Yegor)
- release blocked on one commit that’s breaking almost all internal targets. Lucas M is figuring out the best solution to get that unstuck.
- use of typescript and annotations in angular 1 (with an angular 2 code style) is close.
- some new e2e test failures, possibly related to Chrome, debugging with Hank.
- dgeni issues (annotations output) - PR out, will be landed this week.
July 20
- Binding AST Transformations
- core angular feature needed by router. needs some design input.
- post-meeting discussion to follow
- PR is green and ready to merge that fixes this.
- Sync on Friday was blocked due to a breaking change, so this needs to wait until sync is unblocked. Should be landing tomorrow or Wednesday.
- Benchmarks that caught the issue were internal, so not caught by Travis CI.
- Action: follow up with internal user to make latency check a part of TAP tests. (is this feasible? too slow?) [Martin]
- Every P0 should have someone to pair with the reporter. If the most expert person on the team is heavily loaded, someone else on the team must own.
- Rado is syncmaster. Last sync was Thursday. Large breaking change on Friday. Working on fixing internal users, will sync later today/tomorrow.
- blueprint: Alex will be constraining tests internally so that we can manage them
- How to better communicate breaking changes to internal users on daily sync? [Alex to look into automation for how we can parse existing commit messages] Risk: many commits are not breaking changes but aren't noted as such in the commit message. Sync master would need to update commit message in that case.
- Note to the team: please take care when writing commit messages. they're important to the changelog and sync process.
- alpha-32 release on track to happen by Wednesday.
- Angular 1.4 issues in Angular Material
- Fixes should be in 1.4 later this week.
- New tests for angular release checking angular material by EOW.
- Matias is working on longer-term plan for how we effectively test for animations. Will set up a chat with Tobias, Julie, to talk about how to use Protractor for it.
- Documentation Authoring and Infrastructure
- Meeting tomorrow afternoon to discuss. Core folks, please join if you have expertise/interest. Ping brian to get an invite.
July 13
- Introducing Jules Kremer, new team member
- Angular 1 to Angular 2 Upgrade project
- Kickoff meeting last Thursday
- Brought together several community contributors
- Pete created a new project in angular/ngUpgrade with docs to start discussion
- Next steps are prototype code and more ideas of areas we must cover
- Now syncing per SHA commits from GitHub into Google
- Standups, Core office hours
- Rotation on call for release-responsible person
- Naomi will update the internal-to-Google Angular page with info on this process
- Assign issues in the dashboard that have a milestone but are unassigned
- Internal issues
- Currently hard for folks to tell what we're doing
- Hard to measure our throughput
- Recommend that we keep doing a milestone push
- Should contain full changelog so external folks can track our throughput easily
- Our dashboard needs work so we can easily see all issues…
- Will work on this in upcoming weeks
- Who is doing sync this week? - Jeff
- What's blocked (at risk of slipping)?
- There are a few remnants of Traceur in our codebase
- Some theories of how we move forward on modules as system.js has issues
- Common.js and system.js aren't playing nicely with Karma
- Require.js may have better integration with Karma
- Other bits left are the bundler and our Map shims
- Angular 1 Material needs fixes in ngAnimate
- Matias will work with Rob to bring these into Angular 1 this week
- Rob will work with Matias on ngAnimate for Angular 2 later
- Cleaning up outstanding PRs for 1.4.x
- This week switching to 1.5
- This morning landed matrix parameters, lifecycle hooks
- This week focusing on auxiliary routes and example code
- Last week merged our two DI systems into a single one
- Has a small issue that prevents integration with google, found fix, proceeding
- Still has some quirks. Want to make API surface smaller before beta.
- Jeff and Victor completed work on Pipes. You can now provision them in a reasonable way.
- This week want to improve error messages to be more useful to developers. Every exception should have context of which direction/component was implicated and how to solve.
- Date picker near completion. Blocked by accessibility bits we need to solve.
- Working on bug fixes/improvements for Select and Menu
- whenStable API is now unblocked, now implemented, needs review
- JSONP support nearly ready for review
- URL params serialization in requests should land tomorrow
- This week getting rid of event emitter in favor of Observables API
- New content project PR lets any renderer us content projection - and it will be very fast! :)
July 6
- Daily standups and core hours for the team (reduce WFH)
- New team calendar for core members' availability
- Why we are doing this
- Assign issues in the dashboard that have a milestone but are unassigned
- Load balancing
- Who is doing sync this week? - Jeff
- What's blocked (at risk of slipping)?
- Need update on all issues assigned to @caitp
- Jeff will take on some pipes stuff in addition to Http/Observables work, TBD with @vsavkin
- https://github.com/angular/angular/issues/2638 needs design/discussion TBD right after the meeting.
- Are there any issues in buganizer that haven't been filed in github yet?
- Router - Landed support for deep linking. Lifecycle hooks and routeparams are next. Pete added a d.ts file for router. Matias will use this in an example coming soon.
- DI - Merged a number of changes last week -- midway through the process of unifying to a single stable DI implementation used by core. Should be done this week.
- Change Detection - work on Pipes is the next piece of this effort, underway now.
- Forms - Translated some Angular 1 examples from Ward Bell to Angular 2 (order_management and person_management) to show the comparison of expressivity.
- Angular Material - Closing in on final deliverables for 1.0 (datepicker)
- Transformers (@jakemac) - PRs in review.
- Removing Traceur dep. Two options. We'll explore CommonJS in the short term. Options:
- Use SystemJS: Two outstanding TS support issues (Ian to link here)
- Use CommonJS: Needs investigation.
- Test (@sjelin) - blocked waiting on WhenStable (https://github.com/angular/angular/issues/2808)
- Http - Landed Dart support last week, with minor breaking changes (and a couple of regressions). Created prioritized backlog of remaining http work in issue #2793. Caitlin working on JSONP support for M31, Jeff working on simplifying Observable/Stream output and updating to RxJS Next
- Angular 1 Upgrade Planning: There is a design doc and a meeting with community contributors on Thursday.
- Topics that need discussion:
- Zones is pushed out to M32; at risk since vicb not available to own. Would simplify test story for us.
- A good way forward would be to investigate server-side solution with node. Needs an owner. Brian has background but is heavily loaded on router. Revisit next week.
- Need to write a post-mortem [Jeff] for internal users.
- Need to add angular material to the angularjs travis build. [jelbourn and matsko].
- Jeff says everything was Igor’s fault
- Method decorators that live on the class #2638 is core but blocking progress on the router. Needs an owner.
- ...
June 29, 2015
- Meet new intern, Jason, working on WebWorker execution of Angular2 applications
- Angular 2 upgrade planning
- Igor/Misko were working on Angular 1 APIs that let you get close to Angular 2 and vice versa
- This was too complex
- New direction allows mixing at the component level between Angular 1 & 2
- Have completed a spike with TODO app with mixed Angular 1 & 2 components
- This doesn’t mean we’re going to abandon the Router strategy where views are the boundaries for migration
June 22, 2015
- [Jeff] Core team meetup topic for July MTV meetup: volunteer?
- Maybe move the Mountain View meetup to bi-monthly? Next one in August.
- Victor will present on forms in August
- Ian will present on Tactical in August
- Future topic ideas: Architectural topics, cross-component communication, Benchpress
- [Alex/Ian] Present design for Tactical
- general purpose data access/persistence/mutation meant to make full/partial offline support and synchronization, targeting JS and dart, with minimal backend requirements.
- Project in early phases, starting work now
- [Ian] Design discussion: systemjs or commonjs? decisions for finishing up ts-ification
- Some issues with the traceur-removal task, relating to SystemJS output by TypeScript
- Ian to open issues on TypeScript project
- [Tobias] Update on rendering
routerJune 15, 2015
- Demo: Angular2 and ReactNative (Scott Little)
- Showed 'Hello World' written in TypeScript using Angular 2 on iOS native (code)
- Uses an Angular 2 template but renders via native UI on iOS
- We do not need the DOM diff layer of React - we use a layer deeper where we send commands
- Next step is to chat with React folks per our earlier conversation this year around collaborating on this
- Other background:
- We're investing with the NativeScript team on building native mobile apps via Angular
- We want to learn what we can from the good folks at React
- We may end up supporting both routes for native if there is good reason
- Another (long term) outcome might be more collaboration between ReactNative and NativeScript
- alpha-27 closed
- alpha-28 in planning
- how to use "action" tags in github with milestone tracking
- Issues that seem to be slipping? (about 16, out of ~45 assigned)
- Pawel: 1293 -- need more design?
- Jeff: a bunch of http-related issues from 27 (2442, 2417, 2416, 2415) - waiting on a master PR in need of final docs.
- Rado: 2363 (issue had multiple checkboxes but 4/5 were done. could this have been more granular? how to convey to folks following the issue?)
- Ian: typescriptification cleanup 2335 (Alex is OOO. Rado can help this week.)
- Brian/Matias: bunch of router issues still open (2329, 2325, 2323)
- Pawel: ng-class equivalent (2025) -- needs input
- No current status on https://github.com/angular/angular/issues/1814 Active?
- Julie: 1706 (infinite scroll)
- David: 1381 (ES5 API improvements)
- Working on bug fixes based on feedback from use in GreenTea (internal Google app)
- Will work on deep links, matrix parameters, and difficult sibling routes next
- Have a method for generating URLs, but need a better method in the near future
- Will re-start on docs after we nail down rework of the features in mid-July.
- Working on linking animations to component states
- Plan is for Router to hook into them as well
- The idea is that animations trigger when components change states
- See linked doc, but summary is simpler than in Angular 1 with much more ability to do complex animations tied to your app states
- Update on Angular Material (Angular 1)
- Menu
- Fab toolbar
- Fab speed-dial
- Perf improvements
- Bug fixes
- Next release will be 0.11.0
- Date Picker
- More Menu bits
- Infinite scroll core
- More perf improvements
- Pete, Misko, Igor, and Brad will give talks next week
- Mountain View Meetup is tomorrow
- Lightning talk on Material Design 0.10.0
- Maybe one on http for Angular 2
June 8, 2015
- New process for milestones, setting meaningful dates for M10 and M11. A tour of the new dashboard.
- Have 2 milestones and backlog for all issues.
- If issues are not actionable, we'll just close it so we stay on top of the open issues
- Other process details are here.
- Problem: What to do when a milestone can't be closed because of a late-found internal issue on sync-to-Google
- We will rename the milestones "M10" "M11" to match alpha release numbers. At start-of-week, we'll have three open milestones: the "closing" milestone that is frozen to check against internal sync, the "current" milestone where most of the work is happening, and the "next" milestone that has tasks > 1 week.
- The new milestone begins at 8am Monday PT.
- Need to change our alpha release process to run sync tests before an npm push. Also need a tagging process to clarify when the release candidate SHA is in verification for syn. [Rado to own figuring this out.]
- Misko should move the dashboard to angular/angular
- WARNING: if you use not-authenticated, you can lock yourself out of github. Click the link and assign an API token. (We'll fix this.)
- Update on removing traceur dependence
- Ian working on some giant removal step
- Martin will pair to resolve open issues
- Looking like will complete in Milestone 11
- Some open issues include finding a Map replacement and detecting dev mode
- https://github.com/angular/angular/issues/1745 is high priority, should try to resolve this one sooner (M10 if possible)
- Need to review the backlog issues to get a hotlist of all TS/traceur related issues
- Right now, there's no good way to wrap direct-DOM widgets (jQuery, etc.)
- We're looking at doing this via what we call Render Services -- singletons injected via DI that do rendering on behalf of your Directive
- Details at https://github.com/angular/angular/issues/2409
- Just launched 0.9.8 today
- Doing 0.10 candidate later today which adds the Menu component
- Switching site to Angular 1.4 and will recommend folks upgrade
- Angular 2 work WAS blocked on custom renderers, but can now continue
- Last week reviewed features will all known scenarios
- Simplified by removing some unnecessary APIs
- Added scenarios for overlays/dialog boxes which can now be modeled in routes
- Working on lazy loading components
- Progress captured in https://github.com/angular/angular/issues/2329
- This week working on e2e test coverage, lazy loading, docs, etc.
June 1, 2015
- Angular 1.4 shipped!
- Introductions for intern team members
- Scott Little working on an Angular 2 renderer for React Native
- Ian Riley working on a data abstraction layer for Angular 2
- 2 more interns coming later this summer
- Angular 2 release this week. Items in consideration are in Milestone 9
- Only 9 issues left to complete 100% migration to TypeScript
- Follow ons include better types for Dart, eliminating Dart facades in TypeScript, emitting d.ts file
- There’s plenty to release without these landing...going for it
- Rado will do the release
- Moving to model where every issue has a component, type, priority, and effort.
- Misko will write up as our new process for triaging issues
- Misko wrote an Angular 2 app to aid with triage -- shows items that do not have the triaged properties
- Once categorized, we’ll use the tool as input to milestone planning
- Met with Yehuda/Tom at Ember offices Portland 2 weeks ago around Angular-specific items
- Discussion was very easy. We have full support for our metadata use cases in the work stream.
- We were pushing for function expression support. Given this, symmetry would want function declaration support. Found solution for this by hoisting and executing at top.
- All this was presented in TC39 last week. Generally went well. No change in status -- just an update.
- For circular dependencies, we’ll help on this with tooling (TypeScript can catch it) and JS VMs. This will be noted in the spec for implementers to handle.
- We have a tool in the works for generating Angular 2 applications
- Handles build system, web server (w/ live update), NPM deps, template checking, HTML/Expression validation, etc.
- Demonstrated:
- Generating project skeleton
- Adding a component and seeing live build/reload
- Testing w/ Karma integration
- Better build errors inline in web pages
- Best practices for project structure
- Built-with Angular [Pete]
- Going to decommission
- Will announce this if there are community folks who want to take it over
May 18th, 2015
- Focus and priorities this week and next (Igor, Naomi)
- We are partway in our typescriptification process. Having a mix of TS and non-TS code is making the build fragile and hard to update.
- Need to prioritize finishing the process of migrating to typescript ASAP.
- Tobias will focus on completing the core/compiler and render conversion to TS. Julie will take over some of the testbed work from Tobias to help keep that unblocked.
- Brian and Matias will work with Igor on plug-ins for build improvements. File build issues under the "Build" milestone for angular 2 so we can find them.
- Once typescriptification and build stability are in, router, decorators, custom render, and finalising the public api in the core (app injector, pipes, forms) are next in terms of urgency.
- Core typescriptification checkpoint
- As soon as core/compiler and render are converted, we'll need more people to help with the remaining migration.
- Work is generally straightforward.
- Working on the Test Component Builder which has two parts: 1) a mechanism for testing components outside of an application, 2) accessing elements and Angular's information about them in views. [Julie, with help from Tobias]
- Remaining issues closing today, with exception of https://github.com/angular/angular/issues/1812 which we think should move to M9. Naomi to follow up with Will and Matan.
- This introduces namespacing (ng-for, ng-if, etc...) so all docs must be updated
- Need to update all the docs before we can push the change. (Jeff will help with the dev guide update.)
- Plan is to release Tuesday/Wednesday if unblocked.
- Review hackathon experience
- Internal angular 2 hackathon was very useful in finding bugs/gaps in our angular 2 API.
- First-class TS support in an IDE is really important.
May 11th, 2015
- Too many rough edges, not ready for v1.4. Work with Brian and Matias to improve it.
- Improve animation support. (directionality of the state transition)
- Improved migration story.
- (tobias): timeline and planning
- set up weekly release cycle.
- Migrate document to Asana checklist
- Set up weekly releases cycle on Wednesday. (and rotation)
- (jeff): core team hackathon plans Thu/Fri
- Everyone going to use ts-quickstart as seed project
- Rado to follow up with Martin to provide single typescript definition file
- Jeff adding http library with mock to angular/angular prior to hackathon
- AI: Jeff to set up a shared doc for feedback.
- Jeff & Alex starting on Github App with Github API
- Misko + ?: SVG Chart
- Matias + Chirayu: Built with site
- Rado + ?: Trello, google keep, typo of app.
- Tobias + ?: code-mirror type thing
- Igor + ?: Dashboards
- (victor): migrating to typescript
- Misko: DOM adapter (check with Martin)
- ???: render layer
- ???: compiler
- ???:
- AI: Yegor to make a fancy spreadsheet
- Tried using it for a clang-format release, didn’t work at all for me, even with hand-editing dependencies package.json files, always errored out
- Would be nice to get this into a working state.
- (Yegor): situation with the build system
- running out of file handlers => will work with Igor
May 4, 2015
- Doc Single Sourcing and Release Plans for Angular 2 (Naomi, Alex)
- As part of dev preview, note that releases now have changelog, API doc, and dev guide dependencies. Please check that all of these are up-to-date before an npm/pub release.
- We will be removing Misko's initial dev guide .md files from the angular/angular repo once the last of these (templates) is migrated over.
- We will be moving angular.io dev guide and api doc generation into the angular/angular repository instead of angular/angular.io (doc plans here)
- Alex Eagle will help with next step work on extracting and transpiling examples from a single TS source. We'll prioritize API doc inline examples first so that we can get to Dart API doc publishing sooner.
- Tagging changes are coming for angular.io -- Alex Wolfe is doing the update please ping him if you have any guides outstanding.
- If you are updating dev guide content please ping Naomi, Alex Wolfe, Rado so we can get you up to speed on the new templates. angular.io currently needs a manual push to web hosting, any of us three can do that.
- We need a plan for how we get the downstream angular 1 version of (for example) the router docs from our single source. Igor will run with this.
- Angular Connect Talks (Pete)
- Please make sure you have sent Pete your name if you're coming, and your talk proposal. See the doc he sent out directly.
- Brad, Igor (maybe Naomi) will be available to help review proposed talks.
- Summary of refactorings from last week (Tobias)
- There are only @Directives and @Components. @Decorators are @Directives, @Viewports are @Directives that ask for ViewContainerRef and ProtoViewRef, and @DynamicComponents are @Components without a @View.
- NgElement is now part of ElementRef
- New low level public API with minimal surface: Compiler, ViewManager, ProtoViewRef, ViewRef. E.g. used by DynamicComponentLoader and ViewContainerRef.
- Simplification of render layer and component renderers (Tobias)
- See updated overview and a new section about component renderers in the design doc
- Usable for things like PopupComponent, BidiComponent, IncrementalScrollingTable or NativeScriptRenderer.
- Static DI for Dart (Yegor) - doc
- Angular Material 0.9 is complete and available on CDN and bower. Introduces Chips and Typography, improvements to Tabs, and polish.
- Alex Eagle - all hands on deck this week core team updating to the current TS build. Need your help, please coordinate on what you are migrating to avoid duplication.
- Misko - Namespacing -- see https://github.com/angular/angular/issues/1598
- This came out of discussion with Thomas re: Angular Material
- Seems like a good idea, feedback is generally positive. Looking at making this happen.
April 27, 2015
- We will issue alpha 21 as "developer preview"
- Will contain the router (Brian)
- Decorator support (Rado)
- What does dev preview mean? API docs up, router, changelogs for each version after.
- Will close out 7 today. Some remaining issues moving to Milestone 8.
- Misko, Naomi, Jeremy, Yegor to sync today and bring M8 up to date.
- Process for modules that are developed outside of angular/angular (e.g. router, i18n, animations) and how to integrate them with angular 2 and angular 1 build processes needs a plan.
- Router is currently in its own repository angular/router and in angular/angular. Where should discussion, issues, history be tracked?
- Short term solution: copy code over to angular/angular and generate docs out-of-band and fix them up. Will do code reviews as part of angular 2 codebase.
- Long-term solution? Can we support a modular build system for angular 2 that is separate from angular 1 and angular 2? Needs more discussion to figure out the long term solution. Ideally, using the new build process for angular 2. Igor will come up with a plan to discuss.
- ViewPort directives are now redundant. (Misko, Tobias)
- There will only be directives (former Decorator directives) and component directives (a directive with a shadow view).
- Hoping to land the renaming change by Thursday. We need the router checked in first.
- Also: ViewContainer is now ViewContainerRef
- Update on the build [Igor]
- Dart and JS pipeline are coming via broccoli now. The commonjs path through which we run all our tests in node are using broccoli as well.
- Work is ongoing, but it's getting close.
- Broccoli build should be very fast; if it isn't, please raise issues.
- Dart build is slower than it should be. Yegor is following up with Dart team about a separate issue with dartanalyzer running multiple times.
- We're working on how to deliver the typings based on doc public exports.
- Another release candidate out last week, with animations updates.
- Working through small set of issues to get to full release.
- AngularDart 1.1.2 is coming
- Some minor updates/fixes for the latest Dart. Cutting a release this week.
April 20, 2015
- Internal Angular at Google Summit this week (yes, also a sold-out show!)
- Angular 1.4
- Doing RC1 tomorrow
- Have all features in place
- There’s one small breaking change that may go into 1.5
- No substantial blockers in place
- Just want to give folks time to test out the RC before declaring full release
- Started porting first application at Google to Angular 2 (GreenTea, CRM platform)
- No, this is not ready for folks outside Google to start working with - currently only possible with direct access to Angular team
- We’ll improve, document, etc. based on feedback we collect from internal teams
- Matias introduces ideas for ngAnimate in Angular 2
- Read the design doc for full details and to make comments
- Supports three levels:
- Simple: CSS Triggers
- Greater control: JS-animations
- Full control: Timelines
- Components will declare states that you animate between
- Performance: Key feature will be to avoid unnecessary reflows and combine sets of elements that must animate together
- Current JS animations in Angular 1 don’t let you easily coordinate multiple elements animated in sequence or parallel
- New proposal makes this nicely composable from lower-level animation blocks
- Will also upgrade to take advantage of language features in ES6/7, TypeScript, Dart
- Will cover timeline-based animations in the near future
- Misko: Looks like the right direction, though probably needs more discussion around the API
April 13, 2015
- Matias/Brian/Chirayu working on ways for Router, ngAnimate, and i18n to share code in Angular 1 and 2
- Plan to have all code in Angular 2 and create version that works in Angular 1
- Has issues with supporting this as separate repos as the TypeScript/Dart build as we’d have to replicate all that build infrastructure
- We will need to solve this in the near term so the Angular build doesn’t get too long
- Will build in the angular/angular repo and export for Angular 1.5
- Router will be called ComponentRouter
- Need to know what to call the directive
- In Angular 1, this is <ng-view>
- Needs a name in Angular 2. Calling it…<router-outlet>
- Siblings will differentiate by different ‘name’ attributes
- Let us know if there are known issues with this naming scheme!
April 6, 2015
- Hosting React team at Google on Wednesday. Proposed discussion:
- i18n
- CLI
- Benchpress
- Animations
- Standards: types, annotations
- Other renderers: canvas, native, etc.
- Review potential conferences
- Google-internal Angular conference (confirmed April 22 & 23): full team
- ng-conf Las Vegas (confirmed): Jeff, Matias, David East
- AngularU (confirmed): Igor, Misko, Brad, Pete
- AngularConnect (confirmed October 20-21 in London): full team
- Microsoft Build (proposed: April 29-31 in SF)
- TelerikNEXT (proposed: May 4 in Boston): Brad
- Dart (proposed: April 28/29 in SF)
- TxJS (confirmed: July 24 in Austin): Brian Ford
- Devoxx (proposed: November 9-13 in Belgium)
- Fluent Conference 2016 (proposed: March 8-10 in San Francisco)
- Google I/O (not going)
- New twitter/g+ on-call process
- 3 folks will rotate on duty posting and answering questions
- Goal is to coordinate timing of posts
- Twitter & G+ accounts will now post official communication instead of individuals
- Angular 1 / 2 examples for bablejs.com
- Rado will investigate for Angular 2
- Possibly connect with John Lindquist for Angular 1
- Review partner outreach
- Start an “Angular 2 Q&A”
- What code can I reuse from my Angular 1 application?
- Do I have to use TypeScript or ES6? What’s the downside of just sticking to ES5?
- If I want to use a new language option, what’s the best way to get started?
- How does MVC map to the new structure in Angular 2?
- Why this new template syntax? Do I need to use all those special characters?
- What will I have to do about all the open source modules I rely on?
- Brad will start a doc. Alex, Rado will help fill in content.
- Blog post to follow soon.
- Igor presents on possibly using broccoli in Angular 2 team build
- Why not Gulp for Angular builds?
- Gulp uses streams that don’t compose well for complex transformations.
- Ex: Dart analyzer causes friction. With multiple languages and source maps as well.
- Supported by trees that mirror filesystem
- Lets you have a transactional-style build pipeline
- Trees later in process can have more files than those previously
- Can do operations on multiple generated trees
- Can merge trees (output for ES5 from TypeScript & ES6 sources for example)
- Incremental builds by default
- Cacheing is built-in rather than manual
- Mainstream usage only in ember-cli (and even then only used as a lib, not as a tool itself)
- Many rough edges - not forgiving for things off common path
- Some implementation flaws (though fixable)
- Some design decisions won’t scale inside Google, though it maps better to blaze (bazel) than does gulp
- Many things in Angular 2 could have better names
- Some concepts don’t have names at all. Need to fix this so we can describe in docs.
- Example: @Template should be @View which
- Better matches developer intention
- Matches use cases with non-DOM renderers like native, canvas, WebGL etc.
March 30, 2015
- Matias finished animation PR so it will hit the 1.4 release!
- Waiting on PR from Pawel on http parameter serialization which should land today or tomorrow
- With these, we’ll be at RC0
- Still need migration guide and look for folks with issues
- Working on Overlay, positioning service, and 14 other issues to unblock internal development
- Will have API for focus handling
- Packaging:
- Have an ES5 building working now. Currently LARGE (100K). Needs minification help. Currently includes many dependencies like Rx which need attention.
- Getting this output into our build process
- Working on an output for ES6 next
- VicB Adding micro tasks to Zone.js for test support
- Tests are now injectable
- Need to write mocks
- Julie adding API for e2e testing supporting Protractor
- New Render Layer presentation (tobias)
- Now splitting Angular 2 rendering so change detection, DI and Directives are separate from animation, templates and other rendering concerns
- Goal is to support other, non-Dom renderers like from WebWorkers, mobile native (a la NativeScript), and server-side rendering
- Details in the Angular 2 Rendering Architecture design doc
- Angular 2 http prototype (Jeff Cross)
- Microsoft TypeScript Visit Report
- Covered Module system issues - lobbied for system.register strategy -- our top issue
- Worked on single-file compilation -- nearly done
- With decorators and annotations we decided to create a test suite to ensure preserved compatibility
- Full notes captures in a meeting doc
- Observables in Angular 2 core (victor)
- Added initial support for wrappers
- in Dart we use Streams
- JS currently using Rx 2
- Will move to Rx 3 soon as is available -- it’s aligned with ES7 standards work
- AngularConnect publicly announced for October 20th & 21st in London
- Next meeting we’ll take a look at which conference we’ll be at in Q3/Q4/Q1
March 23, 2015
- 2 areas to get in - Animation refactoring and HTTP Url serialization fix
- Planning on release candidate at end of this week (depending upon Animation)
- If Animation goes in, may have another beta to give it bake time
- Not started planning on 1.5 -- will do this once 1.4 is released
- Have a non-data-driven version working. All basic inputs work. Validation works.
- This week, Victor will implement data driven forms. Plan to have a prototype this week. Next week, hopefully usable.
- Exploring HTML-driven forms (like Angular 1) to support prototyping uses
- Adding support for Observables (JS ES7 proposal, in coordination with Jafar @ Netflix) and Streams (Dart)
- Overlays (pop-ups/modal dialogs)
- Starting design this week
- Working on a common style guide and method for generating ES5/6/TypeScript/Dart from the same content source
- Docs for Annotations API nearly finished
- Goal is to help people get started with developer workflow / tool chain supporting ES5, ES6, TypeScript, Dart and various build tools
- Starting this week. Design doc soon.
- Switching infrastructure to TypeScript
- Plan to incrementally move to the new Dart transpiler in TypeScript tool
- Can currently transpile Angular code base to Dart, but it is not yet correct Dart. Correct Dart coming soon! :)
- Plan document
- Starting Angular Data working group
- Working on 0.9 polish & finish milestone
- Current work on chips-ui, may be in demo state by end of the week
- Working through issues in Angular 2, driving Angular 2 support via this
- Idea is to split angular into application and views.
- Intent is that we can run Angular in other rendering scenarios:
- in webworker
- in native mobile UIs
- with server-side rendering
- etc
- Will land the new renderer tomorrow, in master with tests by end of week
- Updated resources page with new info
- Chat link has pointer to Gitter
- Other small updates
- Currently at 3K views per day!
March 16, 2015
For discussion later today:
- Which projects will we support during early alpha (i.e. no docs yet)? Candidates:
- GreenTea
- Ads
- Material Design
- Our focus to get to Angular Core Beta
- Developers can start work on Angular 2 without our direct assistance
- Docs & docs infrastructure
- Router
- Lazy loading
- Transformers
- Forms
- TypeScript tool chain and process
- Animation
- Overlays
- Basic Accessibility
- Testing story
- Benchpress tool
- Process that shows benchmarks comparing every release
- Full ARIA magic
- i18n
- Persistence
- Production deployment tools & process description
- CLI
- ViewStack
- Data Grid base
- Material Design
- WebWorkers
March 9, 2015
- Messages appear to have been well received
- Migration from Angular 1 to Angular 2 seems to work for most
- Angular 2 is fast fast fast
- AtScript, now TypeScript has a bright future
- Angular 1 will be well supported
- Next target for Angular 1.5
- Planning TBD
- Will collect candidate PRs and issues
- Theme is making 1.5 easier to migrate to Angular 2
- Planning will start after Angular 1.4 release in the next week or two
- Focusing on the needs of our early adopters
- Enabling Material Design component work
- ARIA
- Prefixing attributes
- Writing to attributes and properties
- Chatting with IonicFramework folks on their needs
- Workable version of Forms
- March 17 - 22: Igor, Brian, Chirayu in Tokyo
- March 25-26: Visit TypeScript team in Redmond
- April 8: Meeting with React team @ Google
- ? April 20: Extensible Web Summit (Tobias?)
- April 24: Web Components Face 2 Face
- ? April 21: Fluent meetup
- April 21-23: Google internal Angular conference
- ? April 29 - May 1: Microsoft Build
- June 22-25: Angular University in San Francisco
- Mid-October 2015: ng-London
February 23
- Julie: working on Angular2 testability patch.
- Caitlin: working on making angular2 function in jsc. Some issues fixed, others need work. Focusing on bringing in upstream Traceur changes to Angular2. Also helping
- Matias: Animations in 1.4 landing this week. Working on Animations for 2.0. Planning to keep same code for AngularJS 1.5 and 2.0, similar approach to router. Probably a couple of weeks before prototype, end of March to have a foundation to build on during April and May.
- Misko: getting ready to present at ng-conf, working with Victor on pipes design, collaborating with Matias on animation.
- Pawel: working on ng-conf Angular 1.x presentation. A few bugs fixed on Angular2.
- Pete: nothing interesting, lots of meetings
- Yegor: worked on benchpress for dart, got it working. Working on DOM adapter, researching offline DOM adapters for server-side template compiling.
- Tobias: worked on benchpress, major bits in, google internal integration, fix perf-ci jenkins job to remove flakes, working on ios-driver support, and then releasing to npm soon. Preparation for ng-conf presentation.
- Victor: working on pipes design, early implementation ready with support for Rx observables.
- Alex: working on AtScript format support internally. Working on interop between AtScript and Closure Compiler. Compiler plays well with DefinitelyTyped syntax for Closure Library.
- Chirayu: Working on gender and plural support for AngularJS 1.4. PR needs a little work, hoping to land this week.
- Rado: Worked on DOM read/write queue. Built a big Angular2 application for ng-conf, found some bugs and fixed them. Helping bring others onboard with Angular2.
- Naomi: Working on Angular Material 0.8 release. Website reboot for ng-conf. Internal conference preparations. Worked with Misko on defining Angular2 milestones. Doing some issue and milestone cleanup on Angular2 repo.
- Rob Messerle: Getting 0.8 build into npm and Github. Finished autocomplete component, other bug fixes.
- Brian: Worked through zone issues. Some open items on GIthub with zones to improve debugging, planning to publish release tomorrow addressing issues. Has been addressing feedback on Github about new router. Preparing for ng-conf.
- Jeff: ng-conf presentation prep. Angular 2 Http design fleshed out with Caitlin and Ben Lesh, good foundational design, needs more examples fleshed out. Doing some work on Benchpress and Benchmarks this week. Helping David East as needed for new site.
February 8
- Brian: Working with Lucas & Pete to get API docs together. Focused on ergonomics and polish so we can announce availability of the new Router for 1.x.
- Julie: Will be in MTV this Thursday. Will work on Angular2 testability API and thoughts on end-to-end testing together. Thinking of new way to hook into WebDriver through a proxy server to make development more streamlined.
- Lucas: Triaging 1.x issues. Starting work on Angular 1.x new Router and continue until ng-conf.
- Matias: Refactor of ng-animate -- will fix all known bugs everywhere! :) Have a nearly complete API. Added feature to move elements between pages. Making work with routing. ng-animate will automagically work with routing. Will have demo next week.
- Misko: Working on some structural changes in A2. Making lazy-loading of templates work for Angular2 with VicB. Doing annotation/decorator syntax with Jonathan from Typescript team.
- Pete: Chasing small pull requests for Angular 1.4 release to get to final in the next week or so.
- Shahar: Getting ng-cookies merged...getting other PRs in.
- Yegor: Pushed Angular2 scrolling benchmark to master. Angular alpha is packaged for Dart. Working on automating the packaging. Now syncing to google. Met with Dart team to integrate our benchmarks with their performance test infrastructure. Should complete in a month or so.
- Alex: Fixed bugs in AtScript to Dart transpiler. Added unit tests. Working on ideas how we can work closer with the TypeScript team.
- Victor S.: Did core functionality to forms. Working on basic validations for forms. Looking for the most ergonomic API for developers now.
- Igor: Spending time on the new Router this week. Later will visit the NPM team to discuss making it better for client-side JavaScript.
- Rob: Finished Material Design autocomplete module. Looks good for Material Design 0.8 RC1.
- Chirayu: On i18n working on message extraction code. Figuring out how to have expressions inside message format. Getting this done for AngularJS 1.4.
- Naomi: Working to land Angular Material 0.8. Planning timelines for Angular2.
- Rado: View reuse done for Angular2. Much better performance. Working with David on his Angular2 ToDo app for tomorrow night's demonstration.
- Marc: Fixed issues in directive naming for Angular2.
- Pawel: Working on equivalent of ng-class= for Angular2. Planning to refocus on AngularJS 1.4 until ng-conf.
- Jeremy: i18n for datepicker. Started working on Angular2 template variable assignments to implicit values. Will start Angular2 Material Design this week.
- Tobias:
- Sent initial version of Ng2 npm package to David East
- Talked to Dart folks re running our benchmarks. And they can, including nice graphs, ... Yegor knows details.
- Benchpress: Rewrite almost done, got distracted by publishing Ng2 to npm
February 3
Agenda
- Three folks from Amadeus working with us on Angular 1 & 2
- Bringing them up to speed on Angular2 - will identify areas to contribute
- Involved in i18n, accessibility, and router in particular
- We have the ToDo app done, but needs core help as it has much that is rough
- Misko put together a list of near-term needs
- Tobias free in mid-feb to join
- Jeff will join Brian on Zone/WebSockets issue
- Material design summit update
- Brought full team together
- Worked out many process issues
- 0.71 now out on CDN
- Heading towards 0.8 with many more components (select, svg icons, menu, icon buttons, textfields, grid list, list controls) - will have an 0.8 release candidate by next week. [See what's in 0.8]
- Table scrolling benchmark now works on Angular2
- Rewrite should be done in a few days and work for both Dart and JS
- Next step: pretty graphs!
- Next step: large table benchmark
- ng-conf logistics checkin
- Internal presentations should start week of 2/16
- This week: Build outline
- Next week: Create slides
- 2/16: present first run
- Non-news: CI is hard!
- Working on SocketIO reliability to improve Travis
- Julie/Sammy can help
- Mark Trossler (Googler) may take over Karma leadership from Vojta - final details to be sorted out
- Working on vision doc on where to take Karma next
- performance
- usability
- will share doc soon
- cleanup work
- demos
- change detection is doing really well
- talking to dart team about transformers
- working on data access design this week
- TC39 annotations discussions last week
- Working with Amadeus, out in training part of this week
- i18n - started work on the new js version of the parser, and running a weekly sync on project status
- slide prep for ngconf
- last week: material design summit
- this week: milestone planning for angular2 and angular material
- infinite scrolling benchmark is almost done. v2 is 2x faster
- working on transpilers => closure can now emit typescript friendly code
- more polish
- angular-material, text autocomplete component, working on 0.8
- visiting golden gate, watching superbowl
- working with the MTV team the whole week
- worked with David on TODO app
- react conf
- taught internal AngularDart class
- packaging and releasing v2
- working on docs
- working on view reuse
- rewrote it again
- slow mode (classic mode)
- JIT mode
- designed tree-shaking capability for dirty-checking
- rewrite of benchpress in progress
- big refactor of angular/angular to remove need for System.path mappings
- working on Dart transformers
- got up to speed
- as of today, actively working on transformers
- working on an issue with WebSockets in Zone.js
- an RFC for allowing lazy registration of providers into injectors for angular 1.x
- pairing with Pawel and Lucas on their feedback on the router in 1.x
- later focusing on moving the router into the ng 2 repo, and continuing to polish examples, docs, and remaining ergonomic issues
- refactoring ngAnimate for 1.4, adding timeline capabilities
- internal Jasmine/Protractor upgrade => time sink
- this week working on supporting non-chrome browsers in benchpress
- pass of CI/karma to Sammy
- working on v1
- landed new version of $parse => major perf win
- looking at new router
- fixing angular.module issues
Demos
- Jeff on Lovefield/Angular integration experimentation
- Summary: fun! neat! needs work before practical!
- Misko demo Angular2 todo app
- Same ToDo we love/hate, but now running in Angular2
- Using Firebase as backend
- Included Traceur so we can import AtScript and run it on the fly
- Breakpoints work through sourcemaps!
- Templates are inline as we don't have template loading yet
- Has an issue with Zone.js not working with WebSockets. Fix in the works.
- Done with events. Will look nicer once Forms is done.
- David East will present it at next week's meetup here in MTV/SFO
- Want to simplify the current implementation
- Hooking in scope and DOM into animations is hard
- No way to chain animations or run in parallel - Want to add ability to have animation sequences
- Matias has a new design doc to solve these problems
- To be delivered in AngularJS 1.4
January 26
- Welcome to Alex R., transferring from GreenTea team, joining Angular to work on RPC with Jeff
- Meeting updates:
- All folks on the MD project are here this week
- Goal is to launch 0.71 and get 0.8 under-way
- Had conversations with Ads and Cloud teams about components missing from the spec to address complex desktop needs
- Yesterday we met with a bunch of folks (Angular, V8, Closure Compiler, TypeScript, Chakra, and Flow teams) to talk about common needs around Types in JavaScript. Also had a good discussion about Annotations and Decorators. Lots in common.
- Igor and Misko are headed to TC39 tomorrow to present.
- Time horizon for support of 1.x
- < 1.2 - deprecated
- 1.2 - security fixes only
- 1.3 - current
- 1.4 - next
- What kind of a public timeline could we put together? We'd like folks to be able to comment on our plan.
- In the past, we found that interest decreases rapidly after major version releases
- Angular2 will likely be a steeper migration and needs different thinking
- We have an Angular 1.5 on the radar and are gathering ideas.
- The future will depend on how Angular2 is doing and how easy we can make migration. We'll need to sample to see.
- TODO: Pete/Igor create strawman of how we'll approach support to announce at ng-conf
- Jeff will start $http equivalent for Angular2 next week. Will sync with vicb on this.
- Tobias in rewriting Benchpress to AtScript. Will need to improve webdriver/ieDriver to expose performance logs.
- Team proposals for ng-conf
January 12
Agenda:
- Welcome Alex Eagle to the Angular team!
- Initially working on bridging Closure compiler and TypeScript
- Presented new benchmarking
- Perf tests stabilize faster
- Now have consistent comparable results
- Tracking historic results in Google BigQuery -- requires access, but we’re happy to give access to anyone who wants it. Not interesting for most as we’ll summarize results on every release.
- Next step: run benchmarks on mobile devices -- putting the parts together now.
- Launch process doc (Caitlin)
- Developing a process to evaluate value and costs of features & bug fixes
- Be better about documenting thought process behind features
- Give better path for developers to give feedback on our plans
- Who are we? doc (Caitlin)
- Misko on change detection
- We've made Angular2 two to three times faster than AngularJS 1.x for our Tree Benchmark
- However, we think it should be faster.
- After some analysis, we've made almost everything inline-able, but found that VMs can't optimize our call to the getters because they're megamorphic.
- In Angular2, watches have to be known at compilation phase and we can pre-generate all of these.
- We can reduce the number of megamorphic calls from the # of elements to the # of views and should be much faster.
- It's possible that we could drop the compiler and parser from production.
- It's possible that we can do the same trick for element injectors to make DI faster.
- Next step is to measure. Victor is prototyping this to check rough performance numbers.
January 5
Agenda:
- Tobias presenting benchmark results and his proposal for automated frontend perf testing via webdriver
- [Link to doc from tobias]
- Using WebDriver with Chrome, we can access the full timeline via Chrome's Remote Debugging Protocol (exposed via ChromeDriver, more info here). We can now fully automate our performance tests in Chrome.
- Not in master yet (will be later this week) but once checked in we'll be able to verify benchmarks on every Travis run.
- Works in Chrome and (sort-of) on iOS today, via Appium. We'd like to explore ways of getting this to work on other browsers too. [Julie will own this.]
- We'd like to output log files from Travis [Julie will own this too.]
- We'll make this the "new" benchpress (no new name needed).
- New team member: Alex Eagle! Welcome.
- Hack Days:
- Proposal to once a month have a few days set aside for unstructured Angular work (e.g. we did this last week).
- Is this a good idea?
- We tried this once before. It's a good idea, but needs to be scheduled and planned for. It's better to have someone you pair with so there's a specific plan for what you want to do. At the end, everyone should present.
- New rules!
- Feb 16th, if you want to take 2 days as "hack days" you must 1) present your plan and 2) have someone interested enough to pair with you
- We'll have our hack days that thursday and friday, with presentations on the Friday.
- No Hack Day for Misko -- he will be judging.
- Last week, a few people met and read some papers related to Angular, then got together to discuss. [http://shaffner.us/cs/papers/tarpit.pdf]
- Ongoing, let Vojta know if you want to join and didn't see last week's email.
- We have new GDEs! Dan Wahlin, John Papa, Wilson Mendes. Igor would like members of the team to sign up as mentors for them.
- New York trip report from Igor. In December, a group of Angular folks went out to NYC to meet with internal and external users and speak at the meetup.
- ng-conf
- By EOW, Igor would like to have talks nailed down [link to spreadsheet] and PRs sent to their repository for the talks we're giving. Look for an email from Igor on that.
- Igor to follow up with google folks who expressed interest in attending.
- We need to sync up on travel plans.
- Some work on refactoring ngOptions, mostly on vacation.
- Had a kickoff today for the 1.4 cycle and the first of the beta releases should come out on Monday.
- Two new community members involved in weekly planning: Shahar Talmar, Jason Bedard
- End of last year we did a big triage and fixed some issues, merged and pushed them.
- We're planning to release 1.1 this week. [Victor/Chirayu, starting Tues Jan 6]
- Tobias is working on finishing benchpress2. Large table benchmark from angular 1 is next.
- Naomi will check in with Yegor about porting the scroll table benchmark from angulardart, using benchpress2.
- Jeff will help port large table from angular1 to angular2.
- Need to add benchmarks for polymer to benchpress. Igor needs to follow up on this. [Igor will own polymer in benchpress]
- Misko to do Angular2 triage this week.
- Zones is in and working. You can see this in the example app. Misko to review.
- Design for Forms is still under discussion. Feels like we are ready to start implementation work, but nothing gated on this this week.
- Victor working on emulating shadow DOM this week.
- Jeff is doing some experimenting around offline support.
- Naomi and Misko to hash out a plan for docs work starting.
- Next big pieces of infrastructure for angular 2: Forms and Directives, Animations, Docs, and building a reference app.
- We're closing in on a 0.7 release candidate.
- Internal users are still on 0.6.1 since we held off on a sync over the holidays. We'll be running a sync mid-week.
- No breaking changes planned, but some style changes may have unanticipated consequences for users. Still in pre-release.
- Investigating using Jasmine2 with Protractor as a framework option for people who want to use it.
- Julie to follow up with Marcy on the accessibility automation piece and cc Igor.
- Q1 Planning: Misko, Naomi, Igor working on the plan for what we'll attack. More on this shortly.
December 22 -- NO MEETING DEC 22 or 29th -- Happy Holidays :)
December 15
Agenda:
- ng-repeat is done. next step is building a Large Table benchmark.
- preliminary zone support is in. Comments welcome. [vsavkin with bford]
- Victor is looking at speed improvements in change detection this week and exploring ways of improving debugging.
- Victor will share the design doc for Forms in Angular 2 for comparison with 1.4.
- Jeff is working on a design doc for Offline in Angular 2.
- Angular 1.x update (Pete)
- Met last week to review and agree on main goals for 1.4. Summarized in blog post.
- Meeting tomorrow with Martin Staffa to go over improvements for Forms and potential breaking changes in 1.4. Victor will join.
- AngularDart update (Rado)
- We did a round of triage last week and have decided on issues/PRs that will be in the next AngularDart release in the coming weeks.
- AngularDart freeze is done. We are merging PRs this week.
- Two big areas of pain for users are CSS Shims and Transformers. We'll be making both of these much better in Angular 2; in the interim we've proposed some workarounds for users' specific needs and updated docs (shimming and transformers).
- Docs on publang are broken. Seems to be due to infrastructure differences between AngularDart docs and Dart docs. [Chirayu]
- Rado is syncmaster currently. Starting tuesday, Victor Savkin will take over Sync.
- Angular Material update (Rob, Naomi)
- Last week we released 0.6.1 and posted to the CDN
- We're aiming to release 0.7 RC1 on Dec 16 with the main Theme API changes and refactored tabs. This will be it for breaking changes in 2014 from Angular Material.
- Tasks are now broken out in the doc at a high level. Still need to be split into more granular items.
- Meeting this Friday to figure out what to attack first and who will do what
- Goal is to have v1 of this working in angular 1.4
- Test infrastructure (Jeff, Julie)
- Jeff has a PR ready for review to add Benchpress to Angular 1.x
- Looking into a Traceur version conflict issue for Angular 2 and removing the build step.
December 8
Agenda:
- There's confusion around what we're actually doing.
- Igor working on a doc around guidelines for communication so we get clear messages out there
- Doc will be public when finished (stay tuned)
- We now have 7 or 8 Google Developer Experts approved for Angular
- Will set up a mentorship program attaching core Angular team members to them to enable them with inside scoop to make them even more expert
- Will associate GDE with team members later this week
- Send bio/proposal this week via their github site
- jscompiler (closure compiler)
- Talked with JS style guide arbiters. Positive feedback from most teams. There are many issues to work through. Generally in agreement that we should merge with TypeScript syntax with our added features.
- Martin writing design doc on how to add AtScript/TypeScript features atop jscompiler
- Material Design: Release 0.6.1
- 1.x meeting notes
- More bug fix releases coming
- Revisiting the 'PRs Please' label to make it more useful
- Doing feature planning for AngularJS 1.4 this week
- Code freeze extending through Tuesday 12/9
- Planning future work this week
- Completed tree benchmark with early results. Already better on runtime, gc time, and retained memory than 1.x. Significantly better on memory. Will look at details and start optimizing next.
- i18n: Pluralization and gender support will go into core template syntax for Angular 2. Will look into how to express in AngularJS 1.x (should hit in AngularJS 1.4). Meeting with bidi experts later this week.
- Igor: Discussed service worker thoughts with Addy Osmani. Could app run in a service worker? Would need vDOM or have some hacks to make it work. Can't rely on as browser could kill it at any time...there are some hacks here.
- Robert: Redoing tabs in the Material Design demo page to bring within spec, browser resize, pagination improvements
- Brian: Now running tests for Router 2 on AtScript, Angular 1.x. Published demo app called Phone Kitten that uses the new router. Looking into better animation hooks. Landed initial work last week. Started a updates doc to let folks know where we are on the router progress.
- Victor B: Optimized change detection for Angular 2 on Firefox. There was slower on firefox vs Chrome. Now faster on FF.
- Misko: Spent time with Zach from Famo.us to see how could work well with Angular 2. Started documentation for Angular 2!
- Rado: Added support for view local template variables (bindings) and reuse of views. Helped Pete land docs infrastructure for Angular 2.
- Victor Savkin: Fixed bugs in Angular 2 change detection. Can now do ng-repeat! Started support for zones in Angular 2. Should be done this week.
- Julie: Importing Traceur into google3. Pairing with Jeff in Seattle visit on Benchpress.
December 1
- Milestone 2 for Angular2 approaches! We think about 2 weeks of work minimum.
- We should add a Big Table benchmark to our goals for Milestone 2.
- Tree should be able to finish by end of the week, with some work on pre-requisites for Big Table.
- Want to include support for other browsers.
- Do we need zones for this milestone. [We think not, can wait for Milestone 3.]
- Tobias, Victor, Rado have work to do on the remaining pieces.
- We need to sit down and think through what should be in draft 0 of the Angular2 docs, and get these docs written by end of year. Pete is working on the dgeni infrastructure piece. Misko and Naomi to define this.
- AngularDart is still frozen this week. Naomi is going to run an issue triage this week to decide what we should make our top priority for AngularDart 1.x by end of year. Will pull in Rado and Chirayu and Misko to help on triage.
- CI Server:
- Ongoing stability issues with the CI tests in the last few weeks due to saucelabs flakiness.
- Vojta, Julie to investigate running our CI tests on browserstack instead.
- Server-side prerendering support in Angular. Should we revisit this? Igor is thinking about it and would like input from the team. Igor, Misko, Martin, and Tobias to talk more about pros and cons.
- In the process of getting another 1.x release out. DNS DDOS issues are slowing that down.
- Community effort to reskin the docs as Material Design is underway.
- Pete is working on dgeni for angular2 proof of concept.
- Julie: Working on some internal infrastructure this week for users inside Google.
- Igor:
- Back from vacation and focusing on i18n with Chirayu and CLI project.
- Fixit event in SF was awesome. Lots of productive work on issues. Would be good to pre-screen issues next time to maximize efficiency. Should do this again.
- Misko: Docs for Angular 2 and thinking through what we need in the developer guide. Igor says, please include a glossary this time for consistency :)
- Tobias: Back from vacation, focused on milestone 2 tasks.
- Brian: Back from vacation, porting the phonecat tutorial to use the new router for 1.x.
- Rob: Bug fixes, circular loader for Material Design.
- Vojta: AtScript and related discussions and implementation. Working on an example project to show typical workflow. Will loop Martin in on IDE discussion piece.
- Martin: Joining the team in Mountain View. Getting up to speed on everything.
- Rado: ViewPort for angular 2 is in. Some bug fixes, narrowing in on ng-repeat and ng-if support.
- Chirayu: i18n for AngularJS 1.x. Meetings this week with internal and external stakeholders. Updating the spec doc this week with some new information on decisions re pluralization and gender i18n. Starting on prototyping this week.
- Jeff: Working on the Karma benchpress plugin for AngularJS 1.x. Blocked on an issue with Chrome launcher, working with Vojta. Next step is to integrate with Angular2, and to think through how to use with mobile. Also working on prototyping for difficult use cases with Ben.
- Igor, Tobias, Vojta are going to NYC in 2 weeks. Will be speaking at the AngularJS-NYC meetup and syncing up with folks in NYC.
November 24, 2014
- Julie: Integrating node.js with Google cloud infrastructure (protos, etc.). Met w/ Marcy on how we could automatically audit apps for accessibility in Protractor. Thinking about integrating ngHint with Protractor as well.
- Chirayu: Has task breakdown for i18n work. Working on supporting pluralization and gender. Working on file format / transport that we can use across many use cases. Will review with team after Thanksgiving week.
- Jeff: Experimenting on moving our infrastructure to Docker on Google Cloud. Plans to finish Benchpress plugin for Karma.
- Robert: Rewrote ripple code for Angular Material design. Updated tab navigation to use new spec. Changed animation curves to match the material spec better. Going through some bug fixes. Should push to master later today.
- Victor Savkin: Change detectiong enabling/disabling record ranges so you can disable watching for portions of your app. Can also implement throttling (like once/minute) via this. Working with Tobias on benchmark around view instantiation.
- Rado: Got HelloWorld done for Angular2! Has injection, component, decorator to show off the basics. Implement basic version of ViewPort and working on design explanation to support template-style directives.
- Misko: Spending lots of time discussing Issue 133 with community. I think we’re there on template syntax. Templates must be marked explicitly -- solves issues around variable hoisting. Much simpler for everyone. Thinking about what we need in terms of infrastructure for Angular 2 concepts docs. We want to deliver examples in your language of choice (ES5, ES6, TypeScript, AtScript, Dart, etc.) but we don’t like the idea of maintaining examples in that many languages. Could it be done with a special-purpose transpiler? More thinking to be done.
- Vojta: Working on AtScript in Google. Describing development workflow and properties we want out of it from the developer experience. Wrote basic version of transformer for Traceur that creates goog.module so we can use with jscompiler.
- Pete: Doing a release on AngularJS 1.3.4 in the next hour. Met with folks about redoing the angularjs.org site atop Material Design. Discussing what will go into AngularJS 1.4 (starter discussion doc). Will set up Djeni for Angular 2 next week. Hoping we can hook into AST from Traceur and not have to scrape comments. Pete and Rado will collaborate on a design doc.
November 17, 2014
- Tobias: preparing protoview for template directives in Angular 2
- Jeff: Integrating benchpress into Karma to improve CI processes (Angular 1.3 but generalisable to v2).
- Victor: Last week, merged in most of change detection for A2. Some missing pieces (plug in object.observe) landing this week, need VicB. Victor is also looking at one of the last PRs for Hello World, submitted by vicb.
- Chirayu: Design Doc ready for i18n. (Action: send to the team, put it in the docs folder). Design Review for Wednesday this week. Goal is to have the work broken into subtasks by end of the week and start soliciting contributions. (Naomi to schedule the review.)
- Vojta: Started work on implementing generics in AtScript. Looked into TypeScript extensibility architecture in more detail after Anders' talk. Has been working with Michael on updating internal node.js in Google.
- Brian: Focusing on the new router for 1.3. Improving docs around examples and porting the phonecat app to use the new router so people can look at it and comment. Working on the API around programmatic generation of URLs. Also contributing to animations with Matias.
- Rado: Bootstrapping PR is out for review. Last step on Hello World is a PR from vicb on child watch groups. Next up: view port, view factory, and animations and things that view might need to be aware of. Last week, pushed vicb's tutorials for Dart tutorials and doc.
- Igor: Templating syntax; close to a proposal to resolve issue 133. Will be updating the issue shortly with latest thoughts. Meetup tomorrow, and GDE summit is happening at Google, as well as the ngFixit in SF. Supporting the team.
- Misko: AtScript for internal users, working with Igor on Templating syntax, thinking through web workers. Design Review after Thanksgiving would be ideal. (Naomi to set up.)
- Naomi: program management. Material Design components summit last week. Version 0.6 is landing this week. Following up on security bounties. Posting the TypeScript talk.
- Julie: Working on internal Google use of node.js. Working on enabling stubby calls and protocol buffers. Looking for info from other internal users on what they're interested in.
- Pete: Last Friday's release is going out Monday (today). Working with Jeff on it. Planning now for a 1.4 release next year. Community interest in a docs rewrite for the Angular docs in Material Design style. Jeff will work with Pete on figuring needs for doc server for 2.0. (We should meet after thanksgiving and brainstorm)
- Matias: At GDE summit today/tomorrow. Some time for team discussions on Wednesday and Friday. Will be presenting/discussing animations work in v2 on Friday morning.
People out of office this week
- Tobias OOO starting Thursday
- Igor OOO starting Friday afternoon (will be at the hackathon).
- Naomi OOO from Wednesday.
- Thanksgiving week, who is here? Misko and Brian on Monday only, Jeff, Vojta, Victor, Rado in the office.
Demos
- Victor has a demo for change detection
November 10, 2014
- Naomi: In NYC working on unifying Google internal and external UI components work and planning for the next year in the Material Design project. Coordinating how Chrome V8 and Closure jscompiler will support AtScript. Meeting with these teams and TypeScript folks later this week.
- Caitlin: Working on some of the hard bugs on 1.x. Struggling with some of the issues that we can't fix until Angular 2 -- will document and open for workarounds. Close to getting template literals working in V8.
- Chirayu: Created a design doc for i18n work on 1.3. Compiled many issues from Google teams, will reach out beyond Google next week. Will write an idealized API that we could implement in Angular 2 and work towards an implementation on 1.3.
- Igor: Helping to kick off i18n collaboration with several folks -- connecting Chirayu with all known interested parties. Participating in command-line working group to help guide where possible. Helping ng-conf folks select talks. Writing backgrounder docs on AtScript.
- Jeff: Getting a Benchpress CI server setup for Angular 1.3 continuous benchmarking. Will move to Angular 2 when finished. Working on instrumenting Angular 2 with AngularHint to focus on performance specifically.
- Victor Savkin: Merged Angular 2 parser into master. Now working on change detection. Looked a bit at forms, and want to have a prototype by end of this week.
- Rado: Did design review for Angular 2 bootstrapping. Now working on implementing. Fixed some Traceur issues in the process. Talked to folks from AdWords about needs for multiple apps in one conjoined application. They seem satisfied. Captured in the design doc.
- Vojta: Focused on AtScript transpiler progress. There is now --atscript in Traceur that enables all of our special features at once. Now finishing reexporting -- when you import and then export the same thing. Supporting folks on the AtScript playground when they have questions.
- Misko: Evangelizing AtScript. Need to put the vision into a doc so we can scale and not have to be there in person every time. Our unique proposition is metadata annotations. Not everyone gets this at the beginning so we need to spend more time defining the value here. Doc forthcoming.
- Tobias: Refactored the compiler - several pieces work together in the pipeline. Plan to land it in master today.
- Lukas: Reviewing patches from Pete & Caitliln, triaging issues on 1.3. Need commit access!
- Pete: I've survived a 2nd week in charge of 1.3! Pushed Angular 1.3.2 on Friday. Will continue with more bug fixes in the next release. Helping Brian and Chirayu coordinate the Router 2.0 and i18n for some future release. We've got somewhere around 10 folks still working on 1.3 after the move of folks to Angular 2. Have a list of issues that would be breaking changes -- we'll need to have a discussion to see if we want to make a 1.4 release in the next few weeks.
November 3, 2014
- Victor Savkin: Working on Angular 2 parser. Supports simple expressions. Proposing that will move to forms with Chirayu will pick up parser. Will work with Rob Eisenberg and build off his thinking.
- Brian: Backporting router to 1.3. Building on top of AtScript. Revising API for 1.3 to give an Angular 1.x-esque version of what components are that (we hope) makes it easy to align with Angular 2. Adding shim to route recognizer to use $q instead of native ES6 promises.
- Rado: Creating application class for bootstrapping Angular 2 applications. Will have a design doc soon. Expect multiple iterations to get this right. Will also take on change detection if I finish early.
- Misko: Evolving bind- syntax as discussed in github issue 133. Helping early adopters at Google try out AtScript.
- Jeff: Started a design doc on performance practices not directly related to Angular core that would make apps fast by default. Fixing a 1.3 bug on select. Will take on building a kanban wall that integrates GitHub and internal buganizer tracking items.
- Tobias: Developing the template compiler for Angular 2. Simple dirty checking works for text in text nodes, properties in elements, and properties of decorator directives. Working on optimizations and hope to review with Misko and Igor tomorrow. Next will be to support template and component directives, precompilation of templates, and template loading.
- Chirayu: Back from vacation. Will pick up Angular 2 parser. Will collaborate with potentially Pascal on localization in Angular 1.3.
- Igor: Finishing transition of 1.x ownership to Pete. Want to help drive bind- syntax to a close. Will kick of internationalization.
- Pete: Transitioning from Igor! :) Getting my arms around my new leadership role. Giving an external workshop on Friday.
- Naomi: Working on IDE support for AtScript. Launched Angular Material 0.5.1.
- Igor: I want someone to start working to extend jscs to support AtScript syntax. Maybe Jeff? Will talk more next week. We should reach out to the maintainers to see if they’re okay with accepting this.
- Vojta: Travel. Finishing Source Maps and merging PR 131.
- Robert Messerle: Coming up to speed as a Googler. Will go to NYC to kick off Material Design strategy and come up to speed on owning production bits.
September 15, 2014
- The idea is that we double the team by not doing everything twice by combining our JS and Dart teams. We’d write in ES6 and transpile to Dart and ES5 with facade-style implementation for bits that can’t be specified in a language-neutral method.
- API would be the same between JS and Dart.
- Core tests would be shared across both systems. Ensures API parity.
- Tobias created a spreadsheet with more detailed breakdown of known items we need to be feature complete for Angular 2.0
- Broken into thematic milestones
- Decide on module system (ES6 modules likely)
- Augment Traceur support
- Blocking features: DI, expressions, dirty checking, compiler, animations, unit testing, mocks, web components
- Develop the core: forms, built-in directives, persistence, router, Protractor
- Declare feature complete
- Early adopters validate implementation: Google-internal, super-frameworks (Ionicframework, Famo.us-Angular, etc.)
- Declare beta
- Misko gave demo of how we’d do it
- Write two files for most features - 1 for JS and 1 for Dart
- Will only transpile logic, not DOM or other API access
- Compiler is a great example. Directives should be easy. Change detection. Router as well. We are left with only writing facade code.
- DI will probably need separate implementation on both languages.
- You can use maps, arrays, and any custom object that you define. Other access will happen in the facades.
- Angular developers would never use this transpiler. It will only be for developers who work on the Angular framework.
- Current transpiler supports fields, classes, imports, ===, and many other basic things. Good enough to play with.
- Everyone save Chirayu has flights
- Outlines on presentation due in 2 weeks!
- Rob’s thoughts on Angular 2.0
September 8, 2014
- Feature requests for $resource and $cacheFactory (Jeff)
- Considering supporting expiration headers in $resource
- We’d like to hear from any team who needs expiration support in $cacheFactory - add a GitHub issue if interested!
- May want to expose an API for discovering what is loaded by caches
- Jeff will write a mini-design doc to discuss
- These would not hit 1.3 but would consider for some 1.x release
- Angular 2.0 design strategy (Misko)
- We want a next level of detail to capture 2.0 beyond what we’ve done in design docs
- Google Docs is great for paragraphs, but not for code
- Have started a Cloud9 session with code we can share with interfaces
- The idea would be that we agree on the interfaces before we get to the coding part
- Should help to align JS and Dart semantics
- This spec is really for the Angular team only for now so we can discuss low-level trade offs
- The plan is to have everyone edit the live Cloud9 and commit to a repo on regular basis
July 28, 2014
- Decided that we’ll back-port the AngularJS 2.0 Router to 1.3 in support of Material Design components.
- Sorted out our hotel for ngEurope. Will announce via Twitter/G+ shortly so others can join us. :)
- Had a long discussion around support for binding to Custom Elements. The short summary is that nobody is completely happy with the proposed bind- syntax (around reasons of style/taste of syntax) but we have no better ideas at the moment. For background, see the Templating Design Doc and Templating.
July 7, 2014
Vojta brought up some points that we don’t yet have plans to solve some problems we see in larger apps. In particular, how developers can reason about data flow within an app.
Key points:
- scope hierarchy is a huge pile of shared state that many components from the application
- because of two way data-binding it's not clear what how the data flows because it can flow in all directions (including from child components to parents) - this makes it hard to understand the app and understand of impact of model changes in one part of the app on another (seemingly unrelated) part of it.
demo
- single data flow direction - always from the top to bottom
- each state has an owner - some component - and only that component can change the state
Misko: I can see how we do downwards propagation…create a DAG by doing a digest with exactly 1 evaluation. Its the upwards propagation where we need a solution...needs research.
Vojta: The other thing I want is to have strict separation between of instantiation, logic, and rendering. Rendering should be a side-effect that you can throttle as you want. This would allow us to use requestAnimationFrame() as the throttle to get high performance.
May 19, 2014
- Templating in Angular 2.0. Last week we covered problems around how custom elements get hold of injector and how they’re part of the injection tree (constructor timing)
- Proposing syntax whereby Custom Elements can access parents by requesting them through dependency injection in the attach() method
- Angular directive components can get parent in their constructor
- Angular directive components will support the attached() call for folks who want a consistent syntax
- We still have issue with order in which elements are upgraded (constructor and attach called) - that parents may be upgraded after children
- We’ll fire an angularReady event when all elements have been loaded
- Parents will get hold of children through a query: annotation on their class
- Components will be able to add things to their DI node through a providers: annotation
- Next steps: Implement these changes in the compiler, integrate custom elements with the injector
- Bind-once semantics in 1.3, AngularDart, and *-2.0
- Made a one-time binding change to AngularJS 1.3 last week (not released)
- Can now prefix an observed element and bind one time via a double-colon like:
- <span ng-repeat=”row in ::column>...</span>
- In Angular 2, we’re thinking about default prefetching data before we render - should try to implement this early as it may have design implications
- Discussing if this is the right approach - should the template author be in charge of one-timeness or should the template author decide? We are still debating this
- A better solution to the whole problem is to make dirty checking faster. We’ll prioritize Object.observe() support in AngularJS 2.0 and support for observables in AngularDart. There are other strategies to make this faster in different scenarios - to be supported in watchtower.js
- Big items between here and 1.3 final:
May 5, 2014
- Tobias presenting more discussion of using Custom Elements more natively in AngularJS 2.0. We went down this path to prevent duplicate loading of elements - HTML Imports is the only way to go so why not use it for Angular as a core?
- Presented the same example as last week but now using HTML Imports. Like Polymer, we’d have a group of code called Platform containing all the polyfills that we predict will be implemented by browsers eventually.
- Syntax is more verbose than we’d like. We think there’s room for improvement.
- The ng-app goes away. Instead, HTML Imports loads our components (blocking). After modules have been loaded, it compiles the element template. Then the compiled template would be instantiated.
- Misko: Are components registered different from decorators?
- Igor: Yes, currently as there’s no standard for a call like “registerDecorator()” but we can make an API that looks the same. We can start processing components while the app is loading and we don’t have to wait for DOMContentLoaded event because the platform does it for us now. Better than AngularJS 1.0 as we can do work earlier.
- Misko: Will we have the same issue with having to use a Polymer-like ‘vulcanizer’ compilation step?
- Igor: Yes, but we do this for JS already. Can be solved by SPDY proxy in the future. HTML Imports don’t make this worse. We were doing it in JS land, now we do it in HTML.
- Misko: How would you bind to <title> or attributes of <body>?
- Igor: We’d need a special service for these things.
- Misko: It looks like we’re using HTML Imports as the way we load JS dependencies now. That seems off.
- Igor: There’s currently no imperative API for loading web components. We could ask for that.
- How much boilerplate do you add by using HTML Imports?
- How does this affect unit testing? Do you have sufficient data to construct components without parsing HTML?
- Injectors: Previously, we were working on hierarchical injectors. Via that, directives could get their parent directive. However, when a Custom Element constructor gets called, you do not have access to your parents or children. You do in your attach() call, however. In attach() we then would have initial values for data binding.
- [many threads of discussion about implications...Tobias/Igor need to document]
- Testing: In the past we didn’t need to talk to DOM, but now components can expose methods that you have to call and you need to do imperative code to invoke functionality on it. Now, an AngularJS 1.x controller would need access to DOM to do its work. An example would be a controller that wants to play or pause a video player element. This can make testing difficult.
- Misko: The query feature potentially makes this easy as you could inject a mock at test time.
- Next steps: Good examples of unit testing, more examples of how to support components that need the component hierarchy at construction.
April 28, 2014
- Tobias demonstrated binding to checked property of an X-Tags Web Component through its firing of events on change
- Don’t yet have a good way to de-dup dependencies of components. We can do it for JS, but we can’t for style sheets. HTML Imports can help with this to make sure resources are only loaded once.
- Looking into how we could make Angular components Web Components by default.
- May be able to use Dom Mutation Observers to know when elements are added to add mix-in (ngShow, etc.) behaviors. For structural directives (ngIf), we need to add at component construction time.
- We’d create controller for components independent of the DOM to preserve testability. Breaks down when we start to work with custom elements. Controllers would sometimes need to affect DOM to change colors to reflect state.
- Looked into using an event bus, but there are many edge cases.
- Unresolved. Further exploration in Components use cases doc with some good use cases we want to ensure we solve with any final implementation
- Current thinking is that we’re too close to the DOM for comfort with respect to ability to refactor, extend, test, etc. Needs much more explanation.
- Rob mocked a strategy for integrating Object.observe() into Watchtower.js.
- Goal is to plug O.o in where available in browsers as replacement for JS-based change detection
- Will meet with Igor and Misko to review the work later this week
- Rob got a router prototype working atop the current templating (uninteresting demo, but paves the way for nested and parallel routes)
- Igor brought up that we should potentially support modals and other dialogs as states supported by the router. We’re not sure if this is a good idea yet.
April 21, 2014
- Leaning towards optimizing for Object.observe()-style API. Allow old style observation and make report available for what is slow. We will implement this in watchtower.js and test.
- Data point: calling functions is actually faster than reading properties in Dart
- Want to have a hybrid that allows full expressiveness, but make it obvious as to the steps needed to build fast apps
- Discussion around bootstrap and config for 2.0. In our 2.0 sample app you can do manual configuration, but bootstrapping needs to have a place to put config data.
- Question is around how Web Components could share services without resorting to global state.
- Not an issue for simple components like buttons.
- For complex dependencies, like ones that talk to the server, need wiring state.
- Should we have an automatic convention like writing to window.angular? Let the developers do it manually and create their own convention?
- Gist is that we will support embeddable components and concept of an app that orchestrates global resources like location.
- Configuration data should be a general concept of DI rather than a specific concept of an app.
- Demonstrated pre-parsed templates. Current generated source is 4x larger after gzip. Could help in startup time, but still good for template validation even if not. Saves the step of walking the DOM. Need a large scale test to see what this means for large apps.
April 14, 2014
- Rob announced merging Durandal and AngularJS projects in his blog post
April 7, 2014
- DI: a lot of refactoring but no changes to the public api
- change detection: dart version is done, no changes to watchtower (js)
- templating:
- now integrated with zone.js
- template precompilation demo-able
- template precompilation means that we could drop a bunch of code from production deployment
- working on testing strategy
- talked to Domenic Denicola and I think we conviced him that synchronously testing asynchronous code is not crazy at all.
- we need to figure out strategy for finding a way to intercept the micro-task scheduling so that we could divert registration to a queue that we could control
- we are going to use diary for angular v1, we will need to mock out pieces of traceur runtime
- James suggested that we refactor hot infrastructure code (di and compiler) so that we can time phases within this code using simple timers without summing or resuming stopwatches. This would mean that we could instrument production code very cheaply and distinguish between our code and app code. However, it's unclear whether the refactoring that will simplify instrumentation of the code, will impact production performance.
- design doc and requirements mostly complete
- prototypes in progress
March 31, 2014
- di: no update
- change detection: nothing exciting
- templating:
- we have demo of recursion!
- we hit issues with bind- syntax, looking into alternatives
- Tobias to create a doc with corner-case that we care about and want to support with nice syntax.
- Igor worked with arv@ on updating ES6 polyfill in traceur
- Jeff working on doc for how to use ES6 promises in ng2 and how to test with these promises (the native api assumes async testing which is suboptimal). Discussion: let's try to monkey patch then in tests to see if we can better control promises.
- routing: Brian worked with Rob, exploring apis at the moment, using v1 as the test bed for now because v2 is not mature enough
- runtime types: we need to change `assert` function to something else to prevent conflicts with node's built-in `assert`
- documentation infrastructure: Pascal Precht helping out with docs
- logging: Merrick+Igor worked on mock reporter and start/end api.
- benchmarking: console.time/console.timeEnd is way too slow if we are emitting too many events. we are exploring other options.
- package repo: templating branch now using npm's shrinkwrap for flattening dependencies. we are going to start publishing ES6 code to npm soon.
March 24, 2014
- DI: Implementation done for async injection. Need to think more about how to make this more valuable.
- Change detection: Will prepare for Object.observe() in Chrome’s M35 and do benchmarks to compare.
- Templating: Tobias demonstrated the Hello World example using the new templating, expressions, and data binding from 2.0!
- Console debugging/direct access through an ngNode property that gives read and write cache - has list of directives, the view, and the injector for that DOM node.
- Promises: We’re going to use ES6 promises.
- Current polyfills aren’t suitable except for the one in Traceur.
- The other ones are too large - they’re facades around existing libraries.
- The Traceur one is slightly out of date -- we’ll see if we can help update it.
- Need to benchmark against others like Bluebird, etc.
- Routing: No updates.
- Logging: Will start to instrument templating/change detection now.
- Types and annotations: Have some bugs to work out with using setters - can’t currently use them with watchtower.js. Fix is in a PR, will get this in soon.
- Documentation:
- Working on how we’ll use eslint/jscheck and how to take advantage of ES6+ to generate docs.
- Will likely create an ES6+ to ES6 transpiler so we can feed straight ES6 to linters.
- Side discussion: Folks are worried about the + in ES6+.
- Brad will write a paragraph or two about our intent to provide ES5 and ES6 vanilla paths and that we will switch to a standards-compliant version of annotations and types as soon as they’re available.
- We are looking into using an NPM proxy so we have a local replica of pieces important to Angular and give improved reliability
- Working through issues of the currently flat name/version space with wrappers around shrinkwrap.
- Need to reach out to NPM team about making more core support for client-side development
March 17, 2014
- Brad has a blog post on the story of 2.0. Please give input by tonight so we can post tomorrow.
- DI: Using in a demo with the new templating engine for our first Hello World.
- Igor: We need to figure out our story with Q/promises. It’s 40K so we can’t use it directly
- Brian: Ember folks are using something like RSVP that is already on ES6. Maybe we could use that.
- Jeff: There are promises in ES6/DOM Promises, but they don’t seem stable and polyfills aren’t up to date.
- Igor: Yes, we need to find something to use in the meantime.
- Vojta: I can swap anything in in moments. We just need to decide. I like Q’s API.
- Change detection: Parser is nearly done. 4 failing tests to go. Hopefully in tomorrow.
- Rob: This was a port of the AngularDart version. Still want to go over the abstractions for cleanliness. One-time bindings aren’t yet implemented. I have a plan for that, but not here yet.
- Tobias: We have a HelloWorld! It uses ShadowDOM. I’ve got ng-if working. Next step would be to be useable outside unit tests and to integrate with data-binding.
- Misko: Some ambiguity we need to work about about how binding will work, but we’re close.
- Jeff: Updated design doc with more on mobile and storage quotas. Looking into parameter parsing. Rethinking how we test http, how we swap connections, etc. We’ll get rid of $httpBackend. Next step will be to figure out promise strategy and implement it.
- Brian: More work on base use case. Talked to Tom Dale over the weekend. Suggested we just use the router from Ember. Looking into it, though dubious as it doesn’t have a state-based approach. Would be nice if we could share this.
- Brad: Even if we can’t use it directly, let’s try to build something together that we’d both like.
- Igor: Talked to Merrick on instrumentation and how we’ll do it. He’ll test the API on his colleagues. Will sync on this tomorrow.
- Vojta: No changes. Minor stuff to be done in Traceur, but no blocking issues.
- Pete: Agreed to write up notes on what Djeni need to support Angular V2. Not done, but will get it done in the next few days.
- James: [did a demo on measuring framerate from an android phone]. I need a real app that I can build benchmarks around.
- No status update.
- Should work on this more to prepare for good mobile widgets.
- Igor: Looked into shrinnkwrap in NPM for locking version numbers. Need some fixes in NPM itself. We should be able to write a PR to fix these things. We have it working for Angular 1.x, but we need these fixes in.
- Build: Talked a bit about this, but no action items yet.
March 10, 2014
- DI: Finished async injector as part of DI. Seems ready to use.
- Compiler: New template compiler nearly done. Plan to implement ng-if without data-binding this week as an example.
- Vojta: What’s the story with exporting components?
- Tobias: Plan is to get a view factory automatically injected when you request a template. Directives will work the same as we’ll have declared the list of templates used so we can automatically resolve the dependencies.
- Vojta: Sounds close to HTML Imports. Not using them, but we won’t prevent folks from using them. Just not as the default way. It’s way wordier.
- Tobias: We can do it on the fly but we can also pre-compile the template and send this down as part of the view factory.
- Vojta: So we need to make the bootstrap aware of this so things get injected.
- Change Detection: Change detection is not done, but I think it can be used. Check it out at watchtower.js. Next step will be to support method invocations in the watchers. I’ll then do expression parsing.
- Routing: Finished with Routing doc. Should publish a markdown with pseudocode soon.
- Persistence: Next milestone is finishing initial implementation of ngHttp. I've copied over tests from previous implementation and am about 10% through. Pending no unexpected distractions, should have parity with 1.x by early next week
- Logging: Made progress integrating DI with Logging. Need to use in some other components to get experience.
- Docs Infrastructure (djeni): Using the dgeni project to document itself. Working with Ionic Framework guys on this.
- Benchmarking: Next step to integrate with Chrome Telemetry to get accurate frame-per-second numbers.
- Touch animations: Design doc ready. Built modularly to allow composition to larger use cases. Andy on Ionic wants to help implement.
- Package repository: Pawel hacking an NPM module to flatten the dependency tree and give benefits of Bower on NPM. First implementation was a dead end. have a good path now.
- Vojta: Can’t we use shrinkwrap to lock dependencies?
- Igor: No, we want to separate dev dependencies from client dependencies. Need to know what versions available and constraints per version.
- Vojta: Might we start with shrinkwrap anyway?
- Igor: Hard to figure out Karma patterns for watching files and when building you don’t know what files to grab for deployment.
- Scaffolding: This is tools that implement recommended conventions. Started collecting links to existing work like ngTailor, etc. Needs a leader from the community to take this.
- Brian: I have a long requirements doc that I did for the Yeoman guys a while ago that we should reuse on this.
- Build & Deploy: Not there yet.
February 24, 2014
AIs
- All: finish design docs and get them ready for public request for comments by the end of the week
- Vojta: make changes to the assertion library per feedback provided at routing
Agenda
- more refinement needed for most of the docs, but we should be generally ready for public comments by the end of this week.
- assert.string vs assert.String
- remove assert.define
- destructured arguments
February 3, 2014
AIs
- Igor to move meetings to combine 2.0 meeting to Monday’s meeting
- All to get input on Angular 2.0 design docs
Agenda
- Internal and external working groups will meet this Thursday
- Little progress on last week’s tasks due to team ski trip
- Jeff/Tobias/Caitlin on 1.x this week, rest of the team on 2.0
- Igor will give commit rights to more folks this week
- Planning an “ngSwarm” triage event to expand folks buring through PRs. Dave Geddes will organize.
- Rumor has it that jQuery will move to Karma test runner
- AngularDart.org site to launch today. Aiming for tonight. Already optimized for mobile devices.
- Next website target will be to apply UI refresh to angularjs.org.
- Design docs update:
- Persistence: Had working group meeting. Appears that there will be a rich set of contributors from StrongLoop, FireBase, and BreezeJS
- Benchpress on rounds of comments
- Brian to get feedback from ui-router folks and others
January 27th, 2014
AIs
- [pete+matias] finish the angular docs infrastructure migration to bike-shed this week
- [jeff] add simplest possible style check to our build
- [igor] to post and ask community to help with style check rules
- [jeff+igor] kick off infrastructure security review
- [igor] kick off Angular Working Group
Agenda
- Team ski trip Tue-Wed, expect high communication latency. Pete, Matias, Caitlin will be around though.
- Discussion about how we generate api docs for docs.angularjs.org and how Pete's new doc generator called bike-shed will make things much much better. Since most of the team is out this week, now is a good time to make big refactoring in the code base needed to finish the migration to bike-shed. Matias will help Pete finish it off. The new docs design created by Jan Kuca will be used instead of the current bootstrap-based design.
- Discussion about lazy loading in Angular apps. We have a hackish solution, the proper solution will be in v2.
- Discussion about how to engage with teams inside and outside of google that could make angular v2 Awesomer
- We are going to add style check into our CI to help automate style checking for PRs.
- Post mortem for 1.2.1 release difficulties. We are going to automate more stuff!
- Fluent Conf - we got an invitation from Peter Cooper. We are going to offer an unconference-style session.
- Angular Working Group update - Igor was sick last week, so the working group will be kicked off at the end of this week once we are back from ski trip.
- Infrastructure security review - Igor & Jeff to conduct an infrastructure security review. There is some low hanging fruit out there (github 2factor auth, github acl audit, https everywhere)
January 13th, 2013
AIs
- Hash out implementation for one-time data binding
- Research AMD support for AngularJS 1.3 (#5410 & #4694)
- Matias - Look into dynamic element validation (#1404)
- Look into binding getter/setter (#768)
- Attempt to support date input type (#5256)
- Brian Ford - make websocket service (without fallbacks) (#5411)
- ngTrueValue to be supported in 1.2
- Add support for progress events (#1934)
- Give contenteditable a shot for 1.3, despite the myriad complexities of proper support (#528)
- Igor to share vote-sorted issue list with core team
- Team to review the rest of the vote-sorted issue list to discuss roadmap
- Igor to determine when to fork 1.3
Agenda
- Discuss 1.3 feature votes, make decisions on roadmap
January 6th, 2013
AIs
- [all] Schedule dry run for the ng-conf presentation
- [igor+misko] Make pairing spreadsheet for the team
- [igor] get v1.3 voting numbers
Agenda
- Rewriting scenario tests in protractor
- Discuss presentations for the ng-conf
- Pairing between team members
- Discuss v1.3 fork
December 17, 2013 (12/16 Pt 2)
AIs
- Brian Ford to collaborate with UI-router folks about animation support
- Naomi Black to coordinate efforts to improve our docs generation processes
- Team to meet daily at 4pm for half an hour to review untriaged issues
- Julie and others to start porting scenario tests to Protractor
- Igor and Brian to deliver lightning talks at the next meetup
Agenda
- Discuss our plan for documentation generation
- Discuss team pairing schedule
- Discuss road to Protractor 1.0
- Make sure the team are all on track for ng-conf talks
- Discuss internall processes around Angular 2.0 development
- Designate core team lightning talk speakers for January meetup
December 16, 2013 (12/16 Pt 1)
AIs
- Jeff, Alex and Yegor will collaborate further on data persistence in Angular 2.0
Agenda
- Angular 2.0 proof of concepting
- Performance tooling
- Polyfilling ES6 for Angular 2
- Proof of concept/polyfill of Object.observe() (with zones?)
- Begin Release Angular 1.3.x
- Meeting went over time; another meeting to be scheduled later in the week
December 9, 2013
AIs
- Brian to schedule another hackathon (at or after ng-conf)
Agenda
- Planned the AngularJS 1.2.5 release for this week. Brian is release master.
- Planned AngularDart 0.9.3 for next week. Chirayu is release master.
- From James visiting the Dart team in AAR
- great collaboration with the Dart team
- They need concrete scenarios that they can use for improving performance
- Performance improvements (misko)
- Did lots of experimentation over vacation (some vacation!)
- Has ideas on how to make digest loop even faster (use linked list instead of array, break down expressions into individual field watchers)
- Igor is worried that this is too dependent on implementation of the VM
- Right plan would be to implement this as a strategy for polyfill to Object.observe()
- Post-mortem on Marry Poppins Hackathon (brian)
- brian, vojta, tobias and chirayu refactored a lot of code to make mary testable and code more accessible to new developers
- We realized that CLA verification can't be automated via Mary due to privacy and security issues. Igor researched this and came up with an alternative solution via Google App Script. Igor implemented this and put it to production over the weekend. The end result - script that checks all pending PRs once an hour, verifies CLA and post a comment when a new PR is found that doesn't have a CLA. After launching this we got ~40 signatures over the first weekend.
- Overall we did a lot of work, but not necessarily the work we set out to do. We should do another hackathon to actually build the plugins we need for automation, the codebase is now ready for it.
- Post mortem on 1.2.4 issues (igor)
- There were problems with code.angularjs.org and bower code drops
- Both were fixed the same day
- We have tasks in 1.2.5 to improve release scripts to prevent these issues in the future
- ES6 / Dependency Injection - vojta working on Traceur improvements, had a good discussion with Erik Arvidsson on our contributions
- node.bind - Igor helped Justin to finish the node.bind prototype for AngularDart. Not implementable yet as it doesn’t cover validations and other bits currently handled through ng-model. Needs more strategy work.
December 2, 2013
AIs
- Matias to cut the 1.2.4 release
- Matias to take on adding automated style checking as part of our CI build, or at least break the problem down into sub-tasks
- Jeff, James, Misko, Igor, and Brian to send bios to Brad for inclusion in ng-conf materials
Agenda
- Short week last week, many still out on holiday
- Planned the 1.2.4 release for this week
- Matias volunteered as (first time!) release master
- Discussed updates on ng-conf presentation preparations
- Friday is the MaryPoppin-a-thon hack time to upgrade our GitHub babysitter-bot (for external folks, Mary Poppins lives here)
- Discussed how to do project tracking for Angular 2.0.
- Brad presented an ugly spreadsheet (in his subversive plan to get someone else to do something better)
- Igor volunteered to draw a diagram of what he thinks is the ultimate mind-map-burndown-graph for tracking Angular 2.0
- Brad thinks it can still be backed by data in his ugly spreadsheet