Skip to content
This repository has been archived by the owner on Apr 12, 2024. It is now read-only.

custom directives with self closing tags capture tag siblings #1953

Closed
lgalfaso opened this issue Feb 5, 2013 · 12 comments
Closed

custom directives with self closing tags capture tag siblings #1953

lgalfaso opened this issue Feb 5, 2013 · 12 comments

Comments

@lgalfaso
Copy link
Contributor

lgalfaso commented Feb 5, 2013

When using a directive of type element that at the template is used with self-closing tags then the siblings following the tag are removed when the directive is processed.
E.g

Say there is a directive named 'foo', and the template is

<div>
  <foo />
  <span>Sibling</span>
</div>

will remove Sibling from the end result.

I experience this with Chrome 24.0.1312.57 and Safari 6.0.2 (8536.26.17) both on Mac

Workaround: replace <foo /> with <foo></foo>

@IgorMinar
Copy link
Contributor

self-closing or void elements as the html spec defines them are very special to the browser parser. you can't make your own, so for your custom elements you have to stick to non-void elements (<foo></foo>).

this can't be changed in angular. closing.

@chbrown
Copy link

chbrown commented Jan 13, 2014

This just tripped me up, too. Could something be added to the documentation? Nothing shows up when searching for "self-closing tag" on the Angular site, but Google got me here.

@caitp
Copy link
Contributor

caitp commented Jan 13, 2014

There are no directives with self-closing tags unfortunately, it's not really possible to support these, as the HTML parser in the browser decides if a tag is allowed to be a void tag or not. :(

I think this is mentioned in the documentation, but if it's not, please submit a patch making a note of it!

@chbrown
Copy link

chbrown commented Jan 13, 2014

Maybe I'm not using the right documentation? Searching for "self-closing" is a no-op (doesn't even say "no results" or anything) and searching for "directive" gives me a ton of results, none of which have the word "directive" in the link. So, I'm not sure where that patch would go.

@Lenne231
Copy link

Lenne231 commented Feb 1, 2014

You can deliver your document as XHTML if you want use custom "self-closing" or void elements, but I have never tried to use AngularJS with XHTML.

edeustace added a commit to corespring/corespring-container that referenced this issue Apr 23, 2014
@jarl-dk
Copy link

jarl-dk commented Jun 13, 2014

👍 @chbrown: For proposal for mentioning this in the documentation of directives.
👍 @Lenne231: For an interesting observation: Does AngularJS work for XHTML?

@caitp
Copy link
Contributor

caitp commented Jun 13, 2014

👍@Lenne231: For an interesting observation: Does AngularJS work for XHTML?

At least some of it works for XHTML, though it's not clear how much.

@pratik136
Copy link

Just came across a scenario with <textarea> needing to be self-closing in IE.

Is this a non-issue or is there a workaround? Would the powers-that-be also add an answer to that question on Stack Overflow for future references.

@codeedog
Copy link

@IgorMinar, I disagree with your reading and interpretation of the spec. Here is the VOID ELEMENT specification. It doesn't say that it's "very special to the browser". It does say that it can have "no content under any circumstances". It's possible, in that case, that the Angular team could declare that's the standard and end the discussion. It's also possible (but you don't say) that Angular cannot properly process DOM VOID Elements across browser types.

However, I don't believe any of these hold water. There's no reason not to fix this behavior. The correct fix would be to replace the void element with start & finish tags (appears to be the current behavior and Angular already manipulates the DOM all over the place) and then NOT grab the peers or otherwise wipe them out (i.e. fix the bug). Otherwise, we are forced to write HTML code that is a work-around.

<speaker-control ng-model="volume"/> is so much more preferable than <speaker-control ng-model="volume"></speaker-control>

Meh. Please reconsider this or post a pointer to the Angular source code that processes directives. Maybe someone here will have the time, energy and chops to submit a fix for future inclusion.

Here is a jsFiddle if anyone feels like watching this happen and or for a simple test case.

@codeedog
Copy link

OK, I stand corrected on this. Here's a Stack Overflow Q&A on the topic. One commenter stated that the problem is with Browser (mis)interpretation for void elements. I created another jsFiddle that demonstrates the browser behavior that is the cause of this problem. I suspect this was an early incorrect implementation in some original browser that has now propagated to every browser. This is a rarely used tag syntax and most folks don't understand how void elements are supposed to work. XML (and SGML before it) set all of this up years ago; this is not the way that tag semantics is supposed to work. Quite honestly, all browser behaviors should be fixed. Somehow, I doubt a little side case in a front end MVC framework will trigger a WWW change in browsers. If it is to be fixed, I imagine it will have to go into the next W3C revision to HTML. Anyone feel like taking up the torch?

brandocalrissian added a commit to 18F/e-manifest that referenced this issue Oct 15, 2015
directives because Google can not fix the compiler in all browsers.

The closest Angular gets to documentation on this is located here:
angular/angular.js#1953

Make the password field a password input to mask its content.

Make these signing directives elements only instead of allowing any
valid way to key them.
brandocalrissian added a commit to 18F/e-manifest that referenced this issue Oct 16, 2015
directives because Google can not fix the compiler in all browsers.

The closest Angular gets to documentation on this is located here:
angular/angular.js#1953

Make the password field a password input to mask its content.

Make these signing directives elements only instead of allowing any
valid way to key them.
andrewconnell added a commit to andrewconnell/ng-officeuifabric that referenced this issue Feb 7, 2016
Custom directives should not be self-closing or void elements. Docs and samples updated to reflect this. See this for more info: angular/angular.js#1953 (comment)
andrewconnell added a commit to ngOfficeUIFabric/ng-officeuifabric that referenced this issue Feb 7, 2016
Custom directives should not be self-closing or void elements. Docs and samples updated to reflect this. See this for more info: angular/angular.js#1953 (comment)
Varal7 referenced this issue in BinetReseau/platalbank-khube Feb 24, 2016
Varal7 referenced this issue in BinetReseau/platalbank-khube Feb 24, 2016
Change all pseudo-self-closing-tags to explicitly closed tags

AngularJS is a really *clever* framework. But good code should *not* be clever,
just be easily understandable and easy to learn.

AngularJS tries hard to make you think what you are writing is HTML. It is
*not*. You will believe it really long, and one day it will bite you.

AngularJS creates custom HTML tags. How could anything ever possibly go wrong?
The specification doesn't say much about unknown elements, and voila, you're
hurt.

Here, the issue is that HTML says elements cannot be self-closing, except for a
tiny number of enumerated tags. And AngularJS' tags of course are not in the set
of what can be self-closed. So, the natural effect is that they are not closed,
and immediately englobe all the elements until their parent is closed.

Does that sound normal? AngularJS devs say this is not an AngularJS bug. They
are right, *this* is not an AngularJS bug. The issue is that AngularJS even
tries to make you believe what you are writing is normal html. Let me hammer it
down once more, *it* *is* *not*.

AngularJS is fundamentally broken.

It hacks on a specification that is not designed to handle it. Undoubtedly, it
is a really amazing lot of clever code, but it is not usable. As soon as you try
thinking as they want you to think, that is as though you are writnig "normal"
HTML with special tags, the game is over and you discover it is not.

What you are writing is not HTML, it is AngularJS' pseudolanguage. And it looks
like it is designed to break on every (x)html version change: it draws so deeply
on the internals of the language that any non-conformance will simply make it
not work.

If they wanted to make their own pseudolanguage, they really should have
actually used one, and even thrown xml out of the window. Anyway, xml is a
failure too in modern networks, with its redundant verbose tags. They could just
have written a parser in javascript and used it -- anyway, when you use such a
huge framework you are *expecting* the webpage to be extremely slow to load.

So AngularJS developers chose the worst of the options: they relied on HTML
parsing by the browser, but at the same time decided not to use standard
elements, thus creating a domain-specific language. THEY CREATED A DSL WITH A
PARSER THEY DID NOT WRITE. Yes, you read it right, it's completely stupid: any
bug in any browser's parser will just make the website unreadable. And it's not
like it's even often used code paths. No, they chose to use the least normal
code paths, by deciding to use elements that actually do not exist and therefore
do not have the same nth-class-citizenship as the others.

So, yes, it's clever, but actually such clever hacks should only be used during
the IOCCC, not when writing production code.

I think I'm done for now, but to recap:

AngularJS' fundamental design is broken due to cleverness
@bjorn-ali-goransson
Copy link

Just a thought here. Maybe it's stupid. But would it work to add an angular directive to a self-closing <br />?

@gkalpak
Copy link
Member

gkalpak commented Nov 20, 2016

@bjorn-ali-goransson, it should work, but I don't see how this is related to this thread.

opennode-jenkins pushed a commit to waldur/waldur-homeport that referenced this issue Dec 28, 2018
christopherthielen added a commit to christopherthielen/deck that referenced this issue Jan 31, 2019
201d445 fix(core/ga): Re-enable google analytics (spinnaker#6453)
b6166e0 fix(webhooks): Ensure body and status code are shown for webhooks with monitoring (spinnaker#6452)
dba26d8 feat(kubernetes/v2): Converts CopyToClipboard to React Component (spinnaker#6451)
95b1f5c fix(core/pipeline): Support expressions for pipeline name in the pipeline stage
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
christopherthielen added a commit to christopherthielen/deck that referenced this issue Jan 31, 2019
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
christopherthielen added a commit to spinnaker/deck that referenced this issue Jan 31, 2019
201d445 fix(core/ga): Re-enable google analytics (#6453)
b6166e0 fix(webhooks): Ensure body and status code are shown for webhooks with monitoring (#6452)
dba26d8 feat(kubernetes/v2): Converts CopyToClipboard to React Component (#6451)
95b1f5c fix(core/pipeline): Support expressions for pipeline name in the pipeline stage
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
christopherthielen added a commit to spinnaker/deck that referenced this issue Jan 31, 2019
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
anotherchrisberry added a commit to spinnaker/deck that referenced this issue Feb 13, 2019
* chore(kubernetes): Bump version to 0.0.21

27d8a12 chore(eslint): Fix lint errors
a8c1749 chore(package): Just Update Prettier™
9eccc0f refactor(artifacts): Generalize artifact delegate for reuse (#6495)
6c54b61 fix(kubernetes): do not override `location` and `replicas` in new Scale Manifest stage
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
54157f2 fix(kubernetes/serverGroup): Remove module.exports assignment in typescript file
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
d53836b refactor(kubernetes/modal): Refactor kubernetes modals to use WizardPage component
dba26d8 feat(kubernetes/v2): Converts CopyToClipboard to React Component (#6451)
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
65c2601 fix(kubernetes): post strategic patch body as object
51a8542 fix(kubernetes): fix account selection by handling null values passed to ManifestSelector.isExpression
35be1f0 refactor(*): Don't use js or ts file extension in require()
a02a5e1 chore(k8s): clean up imports (#6430)
fa18bdc feat(kubernetes/v2): Adds CopyToClipboard component to ease getting text from UI (#6419)
98a85e9 chore(*): bump @types/enzyme@3.1.15, @types/jasmine@3.3.7, enzyme@3.8.0, enzyme-adapter-react-16@1.7.1, karma@4.0.0, karma-jasmine@2.0.1, karma-webpack@3.0.5, typescript@^3.2.4, jasmine-core@3.3.0 - disable jasmine 3.0's random test order by default feature
93f1209 fix(appengine/google/kubernetes): change logo background colors to official brand colors (#6347)
e802c45 fix(*): allow modal to stay open on auto-close (#6329)
6fee54d fix(kubernetes): specify monospace fonts to prevent cursor misalignment in ace editor
86baac9 refactor(*): use mask-image CSS for cloud provider logos (#6280)

* chore(google): Bump version to 0.0.5

a8c1749 chore(package): Just Update Prettier™
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
d09a910 feat(google): Add support for accelerators when deploying VMs (#6467)
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
35be1f0 refactor(*): Don't use js or ts file extension in require()
87013c6 config(google): Update GCE's base URL to the new domain (#6401)
9f90ebd fix(google): safe healthcheck lookups when cloning server group
b920442 fix(google): differentiate among autohealing health check kinds
786862b fix(google): fix autohealing clone logic
93f1209 fix(appengine/google/kubernetes): change logo background colors to official brand colors (#6347)
e802c45 fix(*): allow modal to stay open on auto-close (#6329)
d4127fa fix(google): prevent parent server group from overwriting null clone autohealing policies
86baac9 refactor(*): use mask-image CSS for cloud provider logos (#6280)
3afbd00 fix(bake): Allow null extended attributes in bake stages (#6256)
6b8188b chore(*): Add core alias to module tsconfigs
christopherthielen added a commit to christopherthielen/deck that referenced this issue Jun 5, 2019
0a5fd58 refactor(*): remove cache-clearing calls that do not do anything (spinnaker#6861)
72e164d refactor(core): de-angularize ApplicationModelBuilder, fix project executions (spinnaker#6802)
e2b4d8e refactor(*): remove unused local storage caches (spinnaker#6665)
0cdcb1e fix(bake/oracle): Added extendedAttributes (spinnaker#6627)
7d5fc34 chore(prettier): Just Use Prettier™ (spinnaker#6600)
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
d72bc17 fix(eslint): Fix eslint warnings for @typescript-eslint/camelcase
a8c1749 chore(package): Just Update Prettier™
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
35be1f0 refactor(*): Don't use js or ts file extension in require()
ca71ab6 fix(oracle/pipeline): Rename ng module to spinnaker.oracle.* (spinnaker#6219)
6b8188b chore(*): Add core alias to module tsconfigs
af292f6 fix(imports): Avoid "import { thing } from 'core'"
d1acd1b fix(provider/oracle): fix update/edit LoadBalancer (spinnaker#6043)
72e1e8d fix(provider/oracle): add ssh key (spinnaker#5901)
2f3ca8d feat(provider/oracle): create/delete LoadBalancer (spinnaker#5868)
55987ec fix(bake): Execution details Rebake was always false when force rebaking
a74a7f3 fix(bakery/oracle): use read-only text field for bake region (spinnaker#5843)
christopherthielen added a commit to christopherthielen/deck that referenced this issue Jun 5, 2019
2f958d9 fix(cf): Change CUPS label to Route Service URL (spinnaker#7090)
8398d77 refactor(*): make accountExtractor return an array of strings (spinnaker#7068)
7cbf241 feature(cf): server group details creation timestamp links to pipeline (spinnaker#7062)
b712673 fix(cf): fix deploy service manifest artifact selection (spinnaker#7059)
64589b6 feat(cf): Accepting both JSON and YAML in the Deploy Service Configuration stage `parameters` field (spinnaker#7042)
ce8a163 fix(cf): add Artifactory link (spinnaker#6994)
84db0ef fix(cf): reorg build info details on server group detail and summary (spinnaker#6983)
f646a5a fix(cf): Clone sg modal appears. Removed unused lb code. (spinnaker#6915)
7312bb5 feat(cf): add build info to server group (spinnaker#6912)
07895b0 fix(cf): Allow deletion of non existing cluster (spinnaker#6907)
7269d2e feat(cf): Added support for rolling red black deployments (spinnaker#6897)
632538d refactor(cf): remove destination from the SG command model (spinnaker#6892)
62c2b51 feat(cf): Reduce angular dependencies (spinnaker#6893)
662b154 feat(cf): Delete Service Key pipeline stage (spinnaker#6844)
33373c4 feat(cf): Remove React shims from pipeline stages (spinnaker#6856)
902613d fix(cloudfoundry): ensure basic validation of artifacts (spinnaker#6851)
7338f7d refactor(cf): use Observable to set state to prevent memory leaks (spinnaker#6832)
ca36727 feat(cf): add deployment strategy to clone SG (spinnaker#6827)
36074c2 feat(cf): Create Service Key pipeline stage (spinnaker#6821)
aad46c2 fix(provider/cf): Clone model so Orca monitors the correct foundation for up instances (spinnaker#6817)
476e0dd fix(provider/cf): Fix provider selection for resize stage in pipeline (spinnaker#6754)
72e164d refactor(core): de-angularize ApplicationModelBuilder, fix project executions (spinnaker#6802)
1a2af9a fix(provider/cf): Make expected artifacts selectable as clone manifests (spinnaker#6796)
8422d6a fix(pipeline): Fix target impedance validator for clone server group (spinnaker#6785)
e0a8639 fix(cf): Repair Rollback Cluster pipeline stage (spinnaker#6743)
c37500c fix(cf): Map/Unmap LBs and UI cleanup (spinnaker#6737)
09e96a2 fix(provider/cf): Default clone operations to start on creation (spinnaker#6735)
03fa0d9 fix(artifacts): Exclude unmatchable expected artifact types (spinnaker#6709)
29b001b fix({core,cloudfoundry}/deploy): better red/black, rolling red/black help text (spinnaker#6699)
b4ca2b8 fix(cf): Share / unshare execution details (spinnaker#6710)
f80dfc5 feat(cf): prefix apps manager and metrics urls with https:// (spinnaker#6637)
d00b45f fix(cf): map single route at a time (spinnaker#6700)
dafedac feat(cf): Add Updatable Flag To Create Service (spinnaker#6706)
facc737 fix(cf): provide meaningful labels in resize dialog (spinnaker#6704)
51eeba4 chore(core): upgrade the version to formik 1.4.1 (spinnaker#6705)
4f826d1 fix(cf): fix the alignment issue for artifacts in deploy SG (spinnaker#6701)
e2940b4 feat(cf): Share/Unshare services (spinnaker#6685)
009d8c0 fix(cf): populate saved pipeline stage data (spinnaker#6689)
8f866ff fix(cf): make Deploy Service pipeline stage work again (spinnaker#6677)
de57adf refactor(cf): Adopt artifact model in deploy stages (spinnaker#6659)
2224c5e fix(cf): rename text from load balancers to load balancer (spinnaker#6643)
39fe4c6 feat(cf): Display details in pipeline for services
7d5fc34 chore(prettier): Just Use Prettier™ (spinnaker#6600)
2277713 feat(cf): Use spinnaker's built-in timeouts (spinnaker#6476)
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
b673d2c fix(cf): pipeline edit deploy server group (spinnaker#6576)
26471c4 feat(cf): add clone SG pipeline stage (spinnaker#6555)
93d83d6 fix(eslint): Fix eslint warnings for @typescript-eslint/no-namespace
ddbe208 fix(eslint): Fix eslint warnings for no-useless-escape
8cba7ac fix(eslint): Fix eslint warnings for no-case-declarations
7e4b457 fix(amazon): Display capacity as text if using SPEL (spinnaker#6535)
a8c1749 chore(package): Just Update Prettier™
46de5cf chore(cf): rename serviceName to serviceInstanceName (spinnaker#6523)
539457c fix(cf): fix SG pipeline modal display issues (spinnaker#6504)
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
5f81f40 feat(cf): Add artifacts for user-defined services (spinnaker#6468)
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
04bc98b feat(cf): Add Map/Unmap SGs and LBs
651b232 refactor(cloudfoundry/modal): Refactor cloudfoundry modals to use WizardPage component
6bdd9b0 feat(cf/serverGroup): Use discriminator 'type' field to improve type checking (spinnaker#6449)
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
e5bf053 refactor(*): Don't use ts or js file extension in imports
98a85e9 chore(*): bump @types/enzyme@3.1.15, @types/jasmine@3.3.7, enzyme@3.8.0, enzyme-adapter-react-16@1.7.1, karma@4.0.0, karma-jasmine@2.0.1, karma-webpack@3.0.5, typescript@^3.2.4, jasmine-core@3.3.0 - disable jasmine 3.0's random test order by default feature
c9e93df refactor(cf): make SG inputs reusable components
8106122 feat(cf): Reactify resize and rollback modals (spinnaker#6325)
3983700 feat(cf): create AccountRegionClusterSelector React component (spinnaker#6314)
f039770 refactor(provider/cf): reactify instance details (spinnaker#6172)
655f731 refactor(cf): reactify load balancer details pane (spinnaker#6295)
f3d35e1 feat(cf): add user provided service support (spinnaker#6293)
16fd07d refactor(cf): separate SG details sections (spinnaker#6291)
86baac9 refactor(*): use mask-image CSS for cloud provider logos (spinnaker#6280)
1bb55ac feat(provider/cf): support multiple buildpacks (spinnaker#6223)
294df78 fix(provider/cf): show SG and Instance info with LoadBalancers (spinnaker#6224)
283fb36 refactor(provider/cf): refactor create SG to use FormikFormField (spinnaker#6212)
b3f7e91 fix(provider/cf): do not trigger validation on serviceName when hidden (spinnaker#6197)
42e1790 feat(provider/cf): add SG clone action (spinnaker#6162)
b1740a4 feat(provider/cf): Server Group Detail port is default health check type (spinnaker#6159)
307da1b refactor(core/account): Refactor AccountSelectInput to use 'value' prop
6f7f543 refactor(core/account): rename AccountSelectField to AccountSelectInput
142680b feat(provider/cf): add the metrics link to SG details (spinnaker#6147)
d5c2511 feat(provider/cf): deploy Service via manifest (spinnaker#6094)
6b8188b chore(*): Add core alias to module tsconfigs
fa9229c feat(provider/cf): shorten the appsManagerUri (spinnaker#6105)
cd62a34 fix(provider/cf): make validators more robust (spinnaker#6047)
27a26b3 fix(provider/cf): use ICapacity type for scaling server groups
5165973 feat(provider/cf): option to define timeouts for service creation/destroy
790c4b6 feat(provider/cf): display cf health check details for app (spinnaker#6081)
1f47d7c fix(provider/cf): populate red/black strategy additional fields (spinnaker#6072)
c8b8456 refactor(provider/cf): use custom implementation of DeploymentStrategySelector
15de39f refactor(provider/cf): reorder artifact types
72325a4 feat(provider/cf): display service tags for server group
fd22aa0 feat(provider/cf):  Allow health check config on deploy
25a9aa8 fix(provider/cf): render start application checkbox value
4a67136 refactor(provider/cf): use DeploymentStrategySelector react component
8847146 refactor(provider/cf): reactify pipeline stages
35cd08a fix(provider/cf): add missing trigger to deploys
081b48a refactor(provider/cf): make better use of formik library capabilities
23cd1d6 refactor(provider/cf): improve error messages on multiple route issues
c8cb9da fix(provider/cf): handle different success/error cases to display checksum
90e6864 fix(provider/cf): allow only alphanumeric and '_' for env variable keys
2634178 chore(provider/cf): rename "Add services" to "Bind services"
57b1e49  chore(core/presentation): Update formik from 0.11.11 to 1.3.1 (spinnaker#5917)
c0842ad fix(provider/cf): fetch services on a per-region basis
d80e2f6 fix(provider/cf): ensure regions are initialized before rendering
4db9789 fix(provider/cf): fix deploy stage configuration from existing server group
73ed9ae refactor(provider/cf): rename deleteService to destroyService
c8fae53 fix(provider/cf): fix environment variable definition for CF deployments
8e23f8f refactor(*): Replace all uses of wrapped AccountSelectField with react version (spinnaker#5832)
4348deb fix(provider/cf): create servergroup ux improvements
46989b4 fix(provider/cf): repair null errors in deploy
christopherthielen added a commit to christopherthielen/deck that referenced this issue Jun 5, 2019
e2b4d8e refactor(*): remove unused local storage caches (spinnaker#6665)
49affe7 fix(appengine): allow sequence to be suppressed in servergroup names (spinnaker#6667)
7d5fc34 chore(prettier): Just Use Prettier™ (spinnaker#6600)
5cf6c79 chore(prettier): Just Use Prettier™
3ffa4fb chore(angularjs): Do not use .component('foo', new Foo())
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
e1b6663 fix(eslint): Fix eslint warnings for @typescript-eslint/no-use-before-define
ddbe208 fix(eslint): Fix eslint warnings for no-useless-escape
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
93f1209 fix(appengine/google/kubernetes): change logo background colors to official brand colors (spinnaker#6347)
86baac9 refactor(*): use mask-image CSS for cloud provider logos (spinnaker#6280)
8cef885 fix(appengine): move artifact account dropdown below radio buttons (spinnaker#6255)
6b8188b chore(*): Add core alias to module tsconfigs
c190c41 fix(appengine): the selectedProvider is received as null when Create Server Group btn clicked (spinnaker#5908)
351d4fb feat(appengine): unflag container image url deployments (spinnaker#5894)
0a6d3f9 feat(provider/appengine): enable artifacts as config files (spinnaker#5888)
bdca8aa feat(appengine): move config template into html file (spinnaker#5870)
christopherthielen added a commit to christopherthielen/deck that referenced this issue Jun 5, 2019
8398d77 refactor(*): make accountExtractor return an array of strings (spinnaker#7068)
1c61cb2 feat(ecs): service discovery configuration (spinnaker#6899)
654fd3a feat(ecs): Configuration for platform version & placement constraints (spinnaker#6906)
c550d82 feat(ecs): Configure tags (spinnaker#6905)
269d005 fix(ecs): populate load balancers when configuring cmd (spinnaker#6778)
6a76b5f fix(ecs): Fix name of health check grace period attribute (spinnaker#6746)
1c9e075 feat(ecs): docker image selection (spinnaker#6687)
d63dc6d fix(ecs): Remove unused cacheInitializer injection (spinnaker#6681)
e2b4d8e refactor(*): remove unused local storage caches (spinnaker#6665)
2e3fad2 fix(ecs/instance): restore accidentally deleted section in instance details
7d5fc34 chore(prettier): Just Use Prettier™ (spinnaker#6600)
04bb4a0 fix(html): Fix various invalid HTML (spinnaker#6599)
5cf6c79 chore(prettier): Just Use Prettier™
3ffa4fb chore(angularjs): Do not use .component('foo', new Foo())
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
35be1f0 refactor(*): Don't use js or ts file extension in require()
56ce321 feat(ecs): Add option to copy scaling policies from previous server group (spinnaker#6251)
e802c45 fix(*): allow modal to stay open on auto-close (spinnaker#6329)
86baac9 refactor(*): use mask-image CSS for cloud provider logos (spinnaker#6280)
5d0d72a fix(provider/ecs): Add memory limit to server group details (spinnaker#6135)
6b8188b chore(*): Add core alias to module tsconfigs
190064f feat(ecs): support private registry credentials (spinnaker#5799)
christopherthielen added a commit to spinnaker/deck that referenced this issue Jun 5, 2019
0a5fd58 refactor(*): remove cache-clearing calls that do not do anything (#6861)
72e164d refactor(core): de-angularize ApplicationModelBuilder, fix project executions (#6802)
e2b4d8e refactor(*): remove unused local storage caches (#6665)
0cdcb1e fix(bake/oracle): Added extendedAttributes (#6627)
7d5fc34 chore(prettier): Just Use Prettier™ (#6600)
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
d72bc17 fix(eslint): Fix eslint warnings for @typescript-eslint/camelcase
a8c1749 chore(package): Just Update Prettier™
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
35be1f0 refactor(*): Don't use js or ts file extension in require()
ca71ab6 fix(oracle/pipeline): Rename ng module to spinnaker.oracle.* (#6219)
6b8188b chore(*): Add core alias to module tsconfigs
af292f6 fix(imports): Avoid "import { thing } from 'core'"
d1acd1b fix(provider/oracle): fix update/edit LoadBalancer (#6043)
72e1e8d fix(provider/oracle): add ssh key (#5901)
2f3ca8d feat(provider/oracle): create/delete LoadBalancer (#5868)
55987ec fix(bake): Execution details Rebake was always false when force rebaking
a74a7f3 fix(bakery/oracle): use read-only text field for bake region (#5843)
christopherthielen added a commit to spinnaker/deck that referenced this issue Jun 5, 2019
2f958d9 fix(cf): Change CUPS label to Route Service URL (#7090)
8398d77 refactor(*): make accountExtractor return an array of strings (#7068)
7cbf241 feature(cf): server group details creation timestamp links to pipeline (#7062)
b712673 fix(cf): fix deploy service manifest artifact selection (#7059)
64589b6 feat(cf): Accepting both JSON and YAML in the Deploy Service Configuration stage `parameters` field (#7042)
ce8a163 fix(cf): add Artifactory link (#6994)
84db0ef fix(cf): reorg build info details on server group detail and summary (#6983)
f646a5a fix(cf): Clone sg modal appears. Removed unused lb code. (#6915)
7312bb5 feat(cf): add build info to server group (#6912)
07895b0 fix(cf): Allow deletion of non existing cluster (#6907)
7269d2e feat(cf): Added support for rolling red black deployments (#6897)
632538d refactor(cf): remove destination from the SG command model (#6892)
62c2b51 feat(cf): Reduce angular dependencies (#6893)
662b154 feat(cf): Delete Service Key pipeline stage (#6844)
33373c4 feat(cf): Remove React shims from pipeline stages (#6856)
902613d fix(cloudfoundry): ensure basic validation of artifacts (#6851)
7338f7d refactor(cf): use Observable to set state to prevent memory leaks (#6832)
ca36727 feat(cf): add deployment strategy to clone SG (#6827)
36074c2 feat(cf): Create Service Key pipeline stage (#6821)
aad46c2 fix(provider/cf): Clone model so Orca monitors the correct foundation for up instances (#6817)
476e0dd fix(provider/cf): Fix provider selection for resize stage in pipeline (#6754)
72e164d refactor(core): de-angularize ApplicationModelBuilder, fix project executions (#6802)
1a2af9a fix(provider/cf): Make expected artifacts selectable as clone manifests (#6796)
8422d6a fix(pipeline): Fix target impedance validator for clone server group (#6785)
e0a8639 fix(cf): Repair Rollback Cluster pipeline stage (#6743)
c37500c fix(cf): Map/Unmap LBs and UI cleanup (#6737)
09e96a2 fix(provider/cf): Default clone operations to start on creation (#6735)
03fa0d9 fix(artifacts): Exclude unmatchable expected artifact types (#6709)
29b001b fix({core,cloudfoundry}/deploy): better red/black, rolling red/black help text (#6699)
b4ca2b8 fix(cf): Share / unshare execution details (#6710)
f80dfc5 feat(cf): prefix apps manager and metrics urls with https:// (#6637)
d00b45f fix(cf): map single route at a time (#6700)
dafedac feat(cf): Add Updatable Flag To Create Service (#6706)
facc737 fix(cf): provide meaningful labels in resize dialog (#6704)
51eeba4 chore(core): upgrade the version to formik 1.4.1 (#6705)
4f826d1 fix(cf): fix the alignment issue for artifacts in deploy SG (#6701)
e2940b4 feat(cf): Share/Unshare services (#6685)
009d8c0 fix(cf): populate saved pipeline stage data (#6689)
8f866ff fix(cf): make Deploy Service pipeline stage work again (#6677)
de57adf refactor(cf): Adopt artifact model in deploy stages (#6659)
2224c5e fix(cf): rename text from load balancers to load balancer (#6643)
39fe4c6 feat(cf): Display details in pipeline for services
7d5fc34 chore(prettier): Just Use Prettier™ (#6600)
2277713 feat(cf): Use spinnaker's built-in timeouts (#6476)
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
b673d2c fix(cf): pipeline edit deploy server group (#6576)
26471c4 feat(cf): add clone SG pipeline stage (#6555)
93d83d6 fix(eslint): Fix eslint warnings for @typescript-eslint/no-namespace
ddbe208 fix(eslint): Fix eslint warnings for no-useless-escape
8cba7ac fix(eslint): Fix eslint warnings for no-case-declarations
7e4b457 fix(amazon): Display capacity as text if using SPEL (#6535)
a8c1749 chore(package): Just Update Prettier™
46de5cf chore(cf): rename serviceName to serviceInstanceName (#6523)
539457c fix(cf): fix SG pipeline modal display issues (#6504)
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
5f81f40 feat(cf): Add artifacts for user-defined services (#6468)
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
04bc98b feat(cf): Add Map/Unmap SGs and LBs
651b232 refactor(cloudfoundry/modal): Refactor cloudfoundry modals to use WizardPage component
6bdd9b0 feat(cf/serverGroup): Use discriminator 'type' field to improve type checking (#6449)
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
e5bf053 refactor(*): Don't use ts or js file extension in imports
98a85e9 chore(*): bump @types/enzyme@3.1.15, @types/jasmine@3.3.7, enzyme@3.8.0, enzyme-adapter-react-16@1.7.1, karma@4.0.0, karma-jasmine@2.0.1, karma-webpack@3.0.5, typescript@^3.2.4, jasmine-core@3.3.0 - disable jasmine 3.0's random test order by default feature
c9e93df refactor(cf): make SG inputs reusable components
8106122 feat(cf): Reactify resize and rollback modals (#6325)
3983700 feat(cf): create AccountRegionClusterSelector React component (#6314)
f039770 refactor(provider/cf): reactify instance details (#6172)
655f731 refactor(cf): reactify load balancer details pane (#6295)
f3d35e1 feat(cf): add user provided service support (#6293)
16fd07d refactor(cf): separate SG details sections (#6291)
86baac9 refactor(*): use mask-image CSS for cloud provider logos (#6280)
1bb55ac feat(provider/cf): support multiple buildpacks (#6223)
294df78 fix(provider/cf): show SG and Instance info with LoadBalancers (#6224)
283fb36 refactor(provider/cf): refactor create SG to use FormikFormField (#6212)
b3f7e91 fix(provider/cf): do not trigger validation on serviceName when hidden (#6197)
42e1790 feat(provider/cf): add SG clone action (#6162)
b1740a4 feat(provider/cf): Server Group Detail port is default health check type (#6159)
307da1b refactor(core/account): Refactor AccountSelectInput to use 'value' prop
6f7f543 refactor(core/account): rename AccountSelectField to AccountSelectInput
142680b feat(provider/cf): add the metrics link to SG details (#6147)
d5c2511 feat(provider/cf): deploy Service via manifest (#6094)
6b8188b chore(*): Add core alias to module tsconfigs
fa9229c feat(provider/cf): shorten the appsManagerUri (#6105)
cd62a34 fix(provider/cf): make validators more robust (#6047)
27a26b3 fix(provider/cf): use ICapacity type for scaling server groups
5165973 feat(provider/cf): option to define timeouts for service creation/destroy
790c4b6 feat(provider/cf): display cf health check details for app (#6081)
1f47d7c fix(provider/cf): populate red/black strategy additional fields (#6072)
c8b8456 refactor(provider/cf): use custom implementation of DeploymentStrategySelector
15de39f refactor(provider/cf): reorder artifact types
72325a4 feat(provider/cf): display service tags for server group
fd22aa0 feat(provider/cf):  Allow health check config on deploy
25a9aa8 fix(provider/cf): render start application checkbox value
4a67136 refactor(provider/cf): use DeploymentStrategySelector react component
8847146 refactor(provider/cf): reactify pipeline stages
35cd08a fix(provider/cf): add missing trigger to deploys
081b48a refactor(provider/cf): make better use of formik library capabilities
23cd1d6 refactor(provider/cf): improve error messages on multiple route issues
c8cb9da fix(provider/cf): handle different success/error cases to display checksum
90e6864 fix(provider/cf): allow only alphanumeric and '_' for env variable keys
2634178 chore(provider/cf): rename "Add services" to "Bind services"
57b1e49  chore(core/presentation): Update formik from 0.11.11 to 1.3.1 (#5917)
c0842ad fix(provider/cf): fetch services on a per-region basis
d80e2f6 fix(provider/cf): ensure regions are initialized before rendering
4db9789 fix(provider/cf): fix deploy stage configuration from existing server group
73ed9ae refactor(provider/cf): rename deleteService to destroyService
c8fae53 fix(provider/cf): fix environment variable definition for CF deployments
8e23f8f refactor(*): Replace all uses of wrapped AccountSelectField with react version (#5832)
4348deb fix(provider/cf): create servergroup ux improvements
46989b4 fix(provider/cf): repair null errors in deploy
christopherthielen added a commit to spinnaker/deck that referenced this issue Jun 5, 2019
e2b4d8e refactor(*): remove unused local storage caches (#6665)
49affe7 fix(appengine): allow sequence to be suppressed in servergroup names (#6667)
7d5fc34 chore(prettier): Just Use Prettier™ (#6600)
5cf6c79 chore(prettier): Just Use Prettier™
3ffa4fb chore(angularjs): Do not use .component('foo', new Foo())
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
e1b6663 fix(eslint): Fix eslint warnings for @typescript-eslint/no-use-before-define
ddbe208 fix(eslint): Fix eslint warnings for no-useless-escape
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
93f1209 fix(appengine/google/kubernetes): change logo background colors to official brand colors (#6347)
86baac9 refactor(*): use mask-image CSS for cloud provider logos (#6280)
8cef885 fix(appengine): move artifact account dropdown below radio buttons (#6255)
6b8188b chore(*): Add core alias to module tsconfigs
c190c41 fix(appengine): the selectedProvider is received as null when Create Server Group btn clicked (#5908)
351d4fb feat(appengine): unflag container image url deployments (#5894)
0a6d3f9 feat(provider/appengine): enable artifacts as config files (#5888)
bdca8aa feat(appengine): move config template into html file (#5870)
christopherthielen added a commit to spinnaker/deck that referenced this issue Jun 5, 2019
8398d77 refactor(*): make accountExtractor return an array of strings (#7068)
1c61cb2 feat(ecs): service discovery configuration (#6899)
654fd3a feat(ecs): Configuration for platform version & placement constraints (#6906)
c550d82 feat(ecs): Configure tags (#6905)
269d005 fix(ecs): populate load balancers when configuring cmd (#6778)
6a76b5f fix(ecs): Fix name of health check grace period attribute (#6746)
1c9e075 feat(ecs): docker image selection (#6687)
d63dc6d fix(ecs): Remove unused cacheInitializer injection (#6681)
e2b4d8e refactor(*): remove unused local storage caches (#6665)
2e3fad2 fix(ecs/instance): restore accidentally deleted section in instance details
7d5fc34 chore(prettier): Just Use Prettier™ (#6600)
04bb4a0 fix(html): Fix various invalid HTML (#6599)
5cf6c79 chore(prettier): Just Use Prettier™
3ffa4fb chore(angularjs): Do not use .component('foo', new Foo())
cc52bee chore(angularjs): Remove all 'ngInject'; in favor of explicit DI annotation
b6bab1e chore(prettier): Just Use Prettier™
f3fd790 chore(angularjs): Explicitly annotate all AngularJS injection points
a35088a chore(webpack): Switch to TerserPlugin.  Split bundles into ~5mb chunks
5c49dd2 chore(typescript): Switch module from 'commonjs' to 'esnext' to emit raw dynamic 'import()'
0451046 chore(package): Add .npmignore to all packages
6f608a0 fix(*): Remove all self closing tags in AngularJS templates Reference: angular/angular.js#1953 (comment)
35be1f0 refactor(*): Don't use js or ts file extension in require()
56ce321 feat(ecs): Add option to copy scaling policies from previous server group (#6251)
e802c45 fix(*): allow modal to stay open on auto-close (#6329)
86baac9 refactor(*): use mask-image CSS for cloud provider logos (#6280)
5d0d72a fix(provider/ecs): Add memory limit to server group details (#6135)
6b8188b chore(*): Add core alias to module tsconfigs
190064f feat(ecs): support private registry credentials (#5799)
scudette added a commit to Velocidex/velociraptor that referenced this issue May 23, 2020
Apparently they dont always work in angular and lead to failures on
some browsers some of the time.

angular/angular.js#1953
scudette added a commit to Velocidex/velociraptor that referenced this issue May 23, 2020
Apparently they dont always work in angular and lead to failures on
some browsers some of the time.

angular/angular.js#1953
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants