Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Old build URLs are no longer valid #1275

Closed
stucox opened this issue Mar 24, 2014 · 7 comments
Closed

Old build URLs are no longer valid #1275

stucox opened this issue Mar 24, 2014 · 7 comments

Comments

@stucox
Copy link
Member

stucox commented Mar 24, 2014

@KuraFire @SlexAxton @paulirish @ryanseddon @patrickkettner

A lot of old detects used to include underscores in the property names. We standardised these to all-alphanumeric names for v3, but that means old build URLs which use these no longer work.

Do we simply say “old build URLs are no longer valid”?

If so that violates the cool URIs don’t change principle. I know we’ve said v3 is a good chance for API changes, but I’ve only just realised how many build URLs would become invalid (i.e. nearly every build including any non-core detects).

If not, the builder needs to know about the old names. The easiest way to do this would be to add the old names as aliases of the detects.

Here are all the property names which could occur in old build URLs which would no longer work; a few detects have these aliases defined, but using hyphens instead of underscores – e.g. battery-api instead of battery_api – so would require conversion by the builder:

  • a_download
  • audio_audiodata_api
  • audio_webaudio_api
  • battery_api
  • battery_level
  • blob_constructor
  • canvas_todataurl_type
  • css_backgroundposition_shorthand
  • css_backgroundposition_xy
  • css_backgroundrepeat
  • css_backgroundsizecover
  • css_boxsizing
  • css_calc
  • css_cubicbezierrange
  • css_displayrunin
  • css_displaytable
  • css_filters
  • css_hyphens
  • css_lastchild
  • css_mask
  • css_mediaqueries
  • css_objectfit
  • css_overflow_scrolling
  • css_pointerevents
  • css_positionsticky
  • css_remunit
  • css_regions
  • css_resize
  • css_scrollbars
  • css_subpixelfont
  • css_supports
  • css_userselect
  • css_vhunit
  • css_vmaxunit
  • css_vminunit
  • css_vwunit
  • custom_protocol_handler
  • dataview_api
  • dom_classlist
  • dom_createElement_attrs
  • dom_dataset
  • dom_microdata
  • elem_datalist
  • elem_details
  • elem_output
  • elem_progress_meter
  • elem_ruby
  • elem_time
  • elem_track
  • es5_strictmode
  • event_deviceorientation_motion
  • exif_orientation
  • file_api
  • forms_fileinput
  • forms_formattribute
  • file_filesystem
  • forms_placeholder
  • forms_speechinput
  • forms_validation
  • fullscreen_api
  • iframe_sandbox
  • iframe_seamless
  • iframe_srcdoc
  • img_apng
  • img_webp
  • lists_reversed
  • network_connection
  • network_eventsource
  • network_xhr2
  • pointerlock_api
  • quota_management_api
  • script_async
  • script_defer
  • style_scoped
  • svg_filters
  • url_data_uri
  • web_intents
  • webgl_extensions
  • websockets_binary
  • window_framed
  • workers_blobworkers
  • workers_dataworkers
  • workers_sharedworkers
@stucox stucox changed the title Re-instate v2 aliases Old build URLs are no longer valid Mar 24, 2014
@patrickkettner
Copy link
Member

Could we host the old builder for a while on a so domain, and redirect to it if an old URL is requested?

@SlexAxton
Copy link
Member

There's a first-class aliases option in the addTest function. Translating old urls to new ones probably won't be too crazy.

aliases: ['blob-constructor']

@paulirish
Copy link
Member

I think we'll have put in the effort on our side to make old URLs work.

We've used these build URLs as firstclass representations of the build heavily so breaking them breaks expectations. We also don't want punt users to the old builder as we want our users with established builds to get the latest code

@stucox
Copy link
Member Author

stucox commented Mar 24, 2014

+1 for defining them as aliases.

So I think we probably want to add them hyphenated (a-download etc), as some detect properties used to use this format, then we’ll:

  • Replace underscores in property names in the build URL with hyphens
  • Use the result to look up the appropriate AMD module

Who fancies giving me a hand / doing this for me? :-)

I’m working on the updated builder for the v3 beta here btw. I’ll lift my logic out of that to create a module for @joecritch to use on the new site.

@nelsonpecora
Copy link

This is already affecting people using grunt-modernizr, since community tests in that are pointing to the old urls (which isn't always entirely obvious in its output).

@stucox
Copy link
Member Author

stucox commented Apr 29, 2014

@yoshokatana FYI, I think that’s a bit different: the issue with grunt-modernizr is to do with paths to detects in the repo – we’re talking about build URLs via modernizr.com here (which we include in the header comment in a custom build, so you can retrieve the same build again easily)

@stucox
Copy link
Member Author

stucox commented May 2, 2014

@stucox stucox closed this as completed May 2, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants