Граф коммитов

133 Коммитов

Автор SHA1 Сообщение Дата
Daniel Smith 87c94946f3
Allow display of enterprise rollout stage for all feature types (#2616)
* create new stages on the feature detail page

* comments and spacing

* populate and display stage-specific fields

* remove unused import

* fix tests

* changes suggested by @jrobbins

* Update chromedash-feature-detail.js

* remove unused variable

* Allow rollout stage in all feature types
2023-01-03 15:59:03 -08:00
Daniel Smith 556986987a
Display and edit stage-specific data for multiple stages of the same type (#2612)
* create new stages on the feature detail page

* comments and spacing

* populate and display stage-specific fields

* remove unused import

* fix tests

* changes suggested by @jrobbins

* Update chromedash-feature-detail.js

* remove unused variable
2023-01-03 13:57:41 -08:00
Daniel Smith 6b3c5602fa
create new stages on the feature detail page (#2611)
* create new stages on the feature detail page

* comments and spacing

* remove unused import

* changes suggested by @jrobbins

* Update chromedash-feature-detail.js

* change capitalization
2023-01-03 10:42:23 -08:00
Daniel Smith dc21593610
Stage field organization (#2598)
* unique field partitioning

* correct prototype/incubate fields

* remove duplicate metadata form definition

* mark stage-specific fields

* reorganize stage field sections

* Change datatypes for field organization (WIP)

* display fields using new structure

* update editall to use stage ID

* Fix and remove irrelevant test

* remove unused process stage calls

* remove incorrect comment

* fix test

* Additional comments

* small wording change
2022-12-27 14:52:37 -08:00
Jason Robbins 7c40e1873a
Implement voting in gate column (#2603)
* progress

* Implement voting
2022-12-22 13:32:46 -08:00
Daniel Smith 0d4e810349
fix CC emails property name (#2600)
* fix CC emails field name

* add TODO
2022-12-22 11:25:16 -08:00
Daniel Smith 9a1ae3277f
Add back created and updated fields to features_v2.json (#2599)
* add back created and updated fields

* fix test
2022-12-21 13:45:45 -08:00
Daniel Smith cc3a46fa92
Use specific stage data for viewing and editing feature data (#2561)
* display and edit stages based on stage ID

* fix test

* defensive coding with intent stages

* new routes

* save active_stage_id in guide.py

This change is set to land in a separate PR.

* display active stage on detail page correctly

* remove "SHIPPED" stage types

* fix processes and tests

* add shipped form field to shipping form field

* Show matching process stages on process overview

* fix tests

* remove active_stage_id reference

* remove active_stage_id from test

* typo

* update url

* fix web test

* Consolidate "prepare to ship" and "ship"

* add small comment

* remove duplicated function

* clear up logic for writing to stages

* backwards-compatible urls and api

* Update tests
2022-12-20 10:07:18 -08:00
Daniel Smith 79d397eefc
Use active_stage_id to display active on detail page (#2557)
* Use active_stage_id to display active on detail pg

* match stage ID only to determine active stage
2022-12-19 13:48:32 -08:00
Jason Robbins 414f673af9
Implement votes_api and move some code around. (#2586) 2022-12-15 17:47:21 -08:00
Jason Robbins 1102381e68
Introduce permission to comment. More perms checks in approvals dialog. (#2582) 2022-12-13 12:56:08 -08:00
Yann Dago 3648c79e02
Add rollout stage to the edit_all page (#2537)
* Add rollout stage to the edit_all page

- Show the rollout stage in the edit all page for all non-enterprise feature types
- Use STAGE_ENT_ROLLOUT as the id for the piggybacking on the Shipping stage.

* Ensure rollout stage is shown on edit all page

Co-authored-by: Daniel Smith <56164590+DanielRyanSmith@users.noreply.github.com>

* Use copy of forms on edit all page

Co-authored-by: Daniel Smith <56164590+DanielRyanSmith@users.noreply.github.com>
2022-12-07 19:20:45 -05:00
Daniel Smith d229c51ea9
update converter to give a list of stage info (#2554) 2022-12-07 12:15:15 -08:00
Daniel Smith b8c0593ecb
Milestone search fix (#2545)
* add milestone field for searching

* comments

* fix test

* fetch stages asynchronously
2022-12-05 18:28:45 -08:00
Daniel Smith a58d2bda77
Create Stages API (#2535)
* Add new stages API

* add routes and mypy

* changes/fixes suggested by @jrobbins
2022-12-05 13:10:14 -08:00
Jason Robbins 73770850d6
Exclude enterprise features from search results by default. (#2531)
* Exclude enterprise features from search results by default.

* Update internals/search.py

Co-authored-by: Kyle Ju <kyleju@google.com>

Co-authored-by: Kyle Ju <kyleju@google.com>
2022-12-01 14:28:26 -08:00
Jason Robbins d347e13b53
Ensure that enterprise features are not shown on roadmap. (#2532) 2022-12-01 12:50:17 -08:00
Daniel Smith f322a477b4
Add comments describing stage ID in tests (#2524) 2022-11-30 10:08:15 -08:00
Yann Dago b2029cdd7c
Add migrate enterprise stages from INTENT_SHIP to INTENT_ROLLOUT (#2502) 2022-11-28 11:33:48 -08:00
Yann Dago b465758c63
Add enterprise feature and breaking change support (#2482)
* Add enterprise feature and breaking change support

* jcsotti review comments

* jrobbins review comments

* Fix tests

* jcsotti comments: Add tests

* Add enterprise feature and breaking change support

* jcsotti review comments

* jrobbins review comments

* Fix tests

* jcsotti comments: Add tests

* jcsotti comments: Add tests

* Fix CI

* Fix CI

* Add type checking
2022-11-22 14:09:59 -08:00
Daniel Smith fd0efa8b0c
Add more FeatureEntry converter tests (#2485)
* Add more feature entry converters tests

* code cleanup
2022-11-17 16:06:36 -08:00
Daniel Smith 26defeb307
Dev API unit tests (#2486)
* dev API unit tests

* code cleanup
2022-11-17 16:06:12 -08:00
Daniel Smith bdf12e24d9
Add dev API to write and delete test data (#2475)
* Write and delete data for dev environments

* Add 2nd feature entry

* write old Feature entities as well

* More thorough commenting

* Make sure endpoints can only be used locally

* update return statements

* devtrial_instructions is a link

* changes suggested by @jrobbins

* comment change
2022-11-16 22:48:38 -08:00
Daniel Smith 733bc9a8c5
Use FeatureEntry entities to display roadmap information (#2480)
* refactor get_in_milestone() to use FeatureEntry

* Update comments

* changes suggested by @jrobbins

* update tests
2022-11-16 16:45:08 -08:00
Daniel Smith 2602d06d81
Update and handle deprecated views fields (#2484)
* Update and handle deprecated views fields

* value reference consistency

* changes suggested by @jrobbins
2022-11-16 16:09:14 -08:00
Daniel Smith 671b23a704
Use FeatureEntry entities for "All Features" page (#2469)
* Use FeatureEntry for displaying all features list

* remove TODO

* update testing for new function

* Update comments
2022-11-16 15:28:17 -08:00
Daniel Smith a8d59e7559
Views field bug fix (#2481)
* Update converters.py

* add temporary migrate_fe_views function
2022-11-15 17:07:53 -08:00
Daniel Smith d5ba6dc59a
Reference feature stages as possibly plural (#2478)
* Reference feature stages as possibly plural

* update tests

* Check that milestones is not null first

* extra line
2022-11-15 15:34:09 -08:00
Daniel Smith e57ee74a68
Show motivation value in deprecation features (#2464) 2022-11-10 11:37:21 -08:00
Jason Robbins 6ed512c638
Check for undefined MilestoneSet. (#2446) 2022-11-08 09:00:14 -08:00
Daniel Smith 58e1dc4cf6
Update processes API to use FeatureEntry entities (#2438) 2022-11-06 13:00:26 -08:00
Daniel Smith e2ce1d405e
Use FeatureEntry for most client-side use cases (#2433)
* Use FeatureEntry entity for most client-side uses

* leave notify and amendments to Feature for now

* handle redis keys
2022-11-06 12:57:40 -08:00
Jason Robbins d9eb639ac5
Display a "Comments & activity" log at the bottom of the feature detail page. (#2413)
* Intial code for display of amendments

* tests

* More tests, and avoid showing non-useful amendments

* More tests

* Put Loading... in a paragraph tag.

* Indent amendment details
2022-11-02 13:58:37 -07:00
Jason Robbins b9a657b3f0
Implement chromedash-gate-chip. (#2421) 2022-11-02 13:23:03 -07:00
Daniel Smith c12b3a7c87
Verbose FeatureEntry to JSON function (#2410)
* verbose FeatureEntry to json function

* detailed commenting for clarity

* changes suggested by @jrobbins
2022-11-02 10:25:27 -07:00
Jason Robbins bb973677f2
Do double-writes of star_count. (#2428) 2022-11-02 10:04:48 -07:00
Jason Robbins 5ece792be3
Upgrade search to use FeatureEntry (#2416)
* Partial progress

* "me" queries and tests

* maybe work around mypy error
2022-10-31 10:34:30 -07:00
Daniel Smith 49814ec1fa
Use Vote and Gate entities for handling approvals (#2402)
* basic refactoring

* Use Vote and Gate entities for reading and writing

* update tests

* remove old Approval to JSON function

* type hints

* Add gate_type to Vote entity

* review changes

- Remove stage and gate info from format_for_template()
- Add new Vote index
- Change approvals_api.do_post() to take gate type rather than gate id.
2022-10-27 13:20:44 -07:00
Daniel Smith 87a7a23d1f
Move Feature methods to helper files (#2407)
* type hints

* Revert "type hints"

This reverts commit 9ffab5aabd.

* Move feature functions to separate helpers file

* remove import

* more import removal

* end of file newline

* mypy ignore ndb

* @jrobbins review changes

- Removed older standardization field logic
- Added TODO for migration script for values in migrate_views()
2022-10-27 10:17:54 -07:00
Daniel Smith 49fb21595d
Run mypy in Github continuous integration checks (#2324)
* run mypy in CI

* more type hint fixing

* Update requirements.txt

* google.cloud import workaround

https://github.com/python/mypy/issues/10360

* Revert "google.cloud import workaround"

This reverts commit e03dbc7bbeb67acc81f57b9c5d905b9141952dbc.

* mypy google.cloud workaround

https://github.com/python/mypy/issues/12985

* fix regular tests

* remove --install-types flag

* last mypy fix

* type fixes for address_reasons

* move email lists creation

* update for newly merged changes

* Fix regular tests

* Changes suggested by @jrobbins

* Catch invalid requests

* small type hint

* Change methods to properly override

* revert to previous implementation

* revert test

* add back original validate request type method

* remove unused import and rearrange methods

* remove comment string casting; add test back

* add ndb ignore

* Update test_html_rendering.html

* mypy fix

* remove merge addition
2022-10-24 06:40:21 -07:00
Daniel Smith a0aa5ccb42
Schema migration staging fixes 2022-10-19 (#2369)
* staging fixes 2022-10-19

- Fixed approval_defs.set_vote() to write gate_id properly to Vote entity (previously was erroneously writing gate_type to gate_id).
- Created Gate entities in tests to allow Vote entities to be properly written.
- Incremented stage counts in schema_migration script properly reflect the amount of stages created.
- Removed Vote double-write call in Approval.set_approval() (this is no longer needed).

* Update approval_defs.py
2022-10-19 14:53:45 -07:00
Kyle Ju 582a594aa8
Use get_int_arg for integer arg parsing (#2359)
* Replace with get_int_arg usage

* Address comments

Co-authored-by: Kyle Ju <kyleju@chromium.org>
2022-10-19 14:08:42 -07:00
James C Scott III 385d62374b
Add assertions for the templates in #2355 (Part 2 of 2) (#2356)
* Add assertions for the templates in #2355

- Move the TESTDATA functionality to a testing_config to be a test helper.
In this new helper, users can still retreive from it like a dictionary.
In addition, there's a helper function to help make goldens that can be
used to regenerate the golden templates. Add commented out
code to use it.
- Add some clean ups to individual tests or test cases. This was needed
because some of the existing rendering tests would pull from the database.
But since they only asserted for the existence of some values, it did
not matter. In the future, we can add mocks for all of those.
  - These cleanups also help for more than the rendering tests. Before these fixes, there were ~15 non-rendering tests that would fail if a developer ran the full suite with a clean db, then re-ran a test indivdually without resetting the database. There are still 2 non-rendering tests that fail without clearing the database first. But this first iteartion got a lot of them.
- Add a missing test for the PrepublicationHandler to increase coverage

* address comments

* more cleanup
2022-10-19 10:14:52 -04:00
Kyle Ju dca47ebe61
Unify int arg parsing (#2357)
Co-authored-by: Kyle Ju <kyleju@chromium.org>
2022-10-18 15:22:38 -07:00
Kyle Ju beec3b1488
Add num query param for metrics data (#2354)
* Add num query param for metrics data

* Fix

* Address comments

Co-authored-by: Kyle Ju <kyleju@chromium.org>
2022-10-18 13:55:29 -07:00
Jason Robbins 9e5aa80726
Add pagination parmeters to feature search API. (#2352) 2022-10-18 10:02:03 -07:00
Daniel Smith 1dd6211cb5
Refactor Gate and Vote to update Gate state when setting Votes (#2341)
* refactor Gate and Vote

* small type hints

* changes suggested by @jrobbins
2022-10-16 08:43:52 +02:00
Daniel Smith 9ed293d7a2
Change existing handler classes to properly override request methods (#2342)
* Change methods to properly override

* Update comments_api.py

* Update comments_api.py
2022-10-16 08:39:35 +02:00
Daniel Smith 93e57a44f3
Use new Activity entities to display comments (#2321)
* Use Activity entities to view comments

* Update review_models_test.py

* @jrobbins suggested changes
2022-10-12 13:02:35 +02:00
Daniel Smith 3d511e4553
Some introductory type hinting and refactoring (#2319)
* some introductory type hinting and refactoring

* Update user_models.py
2022-10-12 09:16:36 +02:00