Skip to content

This Sculpin release fixes issues (#432, #434) with certain file names and file types.

When processing content types, such as entries in source/_posts/*, Sculpin will now skip certain files.

  • "hidden" files (beginning with a .) will be skipped silently.
    • This helps suppress files like .DS_Store.
  • files which aren't recognized by any registered Formatter will be skipped with a "Skipped ..." message.
    • This helps combat strange behaviour for files with no extension.
Assets 2

@beryllium beryllium released this Apr 17, 2019 · 2 commits to master since this release

This release improves the content:create command and fixes an issue with sorting that is caused by PHP's uasort behaving in an undefined way when sorting items with equal values.

  • Boilerplate is now generated by default when using content:create. Use --dry-run/-d to suppress the creation of these files. Note that the content type YAML definition still needs to be added by hand to your sculpin_kernel.yml file.
  • Taxonomy-related boiler plate files now default to using the default layout instead of no layout at all. This should result in prettier output.
  • ProxySourceCollection now uses the StableSort algorithm from Martijn van der Lee to ensure stable sorting results, which will eliminate some of the issues reported in bug #308 that were causing generate to constantly repeat in watch mode.
  • Thanks to Rami Jumaah and Christian Riesen, Pages can now refer to their own relative pathname and filename using page.relative_pathname and page.filename. This can be useful for implementing an "Edit This Page" link directly to a GitLab or GitHub VCS URL.
Assets 2

@beryllium beryllium released this Apr 10, 2019 · 8 commits to master since this release

Sculpin 3 is here!

It's been a long time coming, but thanks to the intrepid efforts of many contributors, Sculpin 3 is finally here.

This new release brings the project a bit more in line with modern PHP features and introduces some new commands and parameters.

Shout out to the following folks for all of their contributions - thanks for your help!

New in Sculpin 3:

  • Supports PHP 7.2 and higher!
  • Initialize a bare-bones set of source/ files using the new init command
  • The generate command now supports --source-dir and --output-dir parameters
  • Create custom content types with the new content:create command
    • Generates a very basic skeleton of templates
    • Supports defining custom taxonomies (such as tags or categories or any other categorizations you need)

However, there are some changes that affect backwards compatibility.

  • PHP 7.2 is the minimum PHP version that Sculpin 3 will run on
    • Some new return typehints may require custom bundles to have
      their method signatures updated.
    • A number of core classes are now final and some methods have been
      moved to protected and private to help reduce the code's
      complexity.
  • Changes to the symfony/yaml component mean that certain YAML front
    matter values will need to be enclosed in quotes, particularly if they
    contain colons.
    • Sculpin should be quite verbose when this happens.
  • Changes to pagination mean that certain URLs, such as
    "/blog/page/2.html", will change to a folder (e.g., "/blog/page/2/").
  • Bundles that write to the sculpin.output_dir parameter should be
    updated to use the sculpin.writer service instead, in order to
    respect the --output-dir parameter.

Also, the Sculpin Blog Skeleton has begun being modernized, and the
first stage of this involves setting things up with Yarn and Encore and
Webpack instead of the previous solution for assets.

If you encounter issues with the new release or have suggestions, please
use GitHub Issues or the
comments below.

Enjoy!

Assets 2
Pre-release

@beryllium beryllium released this Apr 8, 2019 · 8 commits to master since this release

A hotfix release to fix an issue in RC4. This undoes #420 which seems to have broken the site configuration factory.

Assets 2
Pre-release

@beryllium beryllium released this Apr 4, 2019 · 9 commits to master since this release

This is Release Candidate 4 for Sculpin 3.0.0.

New requirements for this version of Sculpin include PHP 7.2 or higher.

As this is a Release Candidate, please help by filing GitHub issues if you notice any problems!

New for Release Candidate 4:

A number of developers have chipped in to provide some great code cleanups and fixes. Thanks to @dbu @GawainLynch @ChristianRiesen @bellisk @opdavies, things are looking much nicer in Sculpin land.

  • Some references to %kernel.root_dir% have been changed to a hopefully more-accurate %kernel.project_dir% argument (#420)
  • PermalinkCollectionStrategy has been pulled out of the container so that SF4.2+ can properly dump the service container if desired (#419)
  • Exception handling has been improved and now displays colourful & more informative exceptions in watch mode (#421)
    • Missing data provider fatal error is now a more-informative exception (#418)
  • References to Twig classes have been switched to use namespaces (#423, efaa7c3)
  • A number of core classes are now final and some methods have been moved to protected and private; this will help reduce the complexity/surface of the code (#416, #417)
    • If this causes an issue, please file an issue or a PR. There might be use cases that weren't known about.

New for Release Candidate 3:

  • Fixed an issue with custom bundles not being able to register event handlers. There may be other custom bundle/extension issues lurking in the corners. Keep an eye out!

New for Release Candidate 2:

  • :folder permalink property
  • Bugfix for theme resource method

New for Release Candidate 1:

  • New --source-dir parameter to the generate command
  • New init command for initializing a bare-bones Sculpin configuration
Description:
  Initialize a default site configuration.

Usage:
  init [options]

Options:
  -t, --title=TITLE              Specify a title for your Sculpin site.
                                 [default: "My Sculpin Site"]

  -s, --subtitle=SUBTITLE        Specify a sub-title for your Sculpin site.
                                 [default: "A Static Site Powered By Sculpin"]

      --project-dir=PROJECT-DIR  The project directory.
                                 [default: "."]

Help:
  The init command initializes a default site configuration.

New for Alpha 4:

  • @lex111 has made great progress with updating sculpin's source code to use more PHP 7.x syntax and functionality.
    • Attention: Sculpin extension developers - it would be helpful to check that your extension works with this alpha release's changes.

New for Alpha 3:

  • @lex111 found and fixed an issue with the event_dispatcher service not being public.
  • A little bit of syntax cleanup (array() to [])

New for Alpha 2:

  • A number of dependencies have been updated to the latest versions. This may introduce unexpected behaviour or deprecation notices in workflows that are not currently part of the test suite.

  • Handling of the new --output-dir parameter has been modified. Bundles and extensions that rely on sculpin.output_dir should be updated to use the sculpin.writer service for writing to the proper output location.

  • The temporary workaround for the dflydev/dot-access-configuration dependency in Alpha 1 has been removed.

Alpha 1:

  • A potential BC break to watch out for is a change in the URL format of interstitial "pagination" files. Bookmarks for "Page 2" and such may need to be updated.

  • This alpha version also includes the new "sculpin content:create" command, which allows you to generate a custom data type and associated templates straight from the command line:

Usage:
  content:create [options] [--] <type>

Arguments:
  type                           Name for this type (e.g., "posts")

Options:
  -b, --boilerplate              Generate boilerplate/placeholder/template files.
  -t, --taxonomy=TAXONOMY        Organize content by taxonomy categories ("tags",
                                 "categories", "types", etc) (multiple values allowed)

Help:
  The content:create command helps you create a custom content type and,
  optionally, the associated boilerplate/templates.

Enjoy!

Assets 2
Pre-release
Pre-release

@beryllium beryllium released this Mar 7, 2019 · 24 commits to master since this release

This is Release Candidate 3 for Sculpin 3.0.0.

New requirements for this version of Sculpin include PHP 7.2 or higher.

As this is a Release Candidate, please help by filing GitHub issues if you notice any problems!

New for Release Candidate 3:

  • Fixed an issue with custom bundles not being able to register event handlers. There may be other custom bundle/extension issues lurking in the corners. Keep an eye out!

New for Release Candidate 2:

  • :folder permalink property
  • Bugfix for theme resource method

New for Release Candidate 1:

  • New --source-dir parameter to the generate command
  • New init command for initializing a bare-bones Sculpin configuration
Description:
  Initialize a default site configuration.

Usage:
  init [options]

Options:
  -t, --title=TITLE              Specify a title for your Sculpin site.
                                 [default: "My Sculpin Site"]

  -s, --subtitle=SUBTITLE        Specify a sub-title for your Sculpin site.
                                 [default: "A Static Site Powered By Sculpin"]

      --project-dir=PROJECT-DIR  The project directory.
                                 [default: "."]

Help:
  The init command initializes a default site configuration.

New for Alpha 4:

  • @lex111 has made great progress with updating sculpin's source code to use more PHP 7.x syntax and functionality.
    • Attention: Sculpin extension developers - it would be helpful to check that your extension works with this alpha release's changes.

New for Alpha 3:

  • @lex111 found and fixed an issue with the event_dispatcher service not being public.
  • A little bit of syntax cleanup (array() to [])

New for Alpha 2:

  • A number of dependencies have been updated to the latest versions. This may introduce unexpected behaviour or deprecation notices in workflows that are not currently part of the test suite.

  • Handling of the new --output-dir parameter has been modified. Bundles and extensions that rely on sculpin.output_dir should be updated to use the sculpin.writer service for writing to the proper output location.

  • The temporary workaround for the dflydev/dot-access-configuration dependency in Alpha 1 has been removed.

Alpha 1:

  • A potential BC break to watch out for is a change in the URL format of interstitial "pagination" files. Bookmarks for "Page 2" and such may need to be updated.

  • This alpha version also includes the new "sculpin content:create" command, which allows you to generate a custom data type and associated templates straight from the command line:

Usage:
  content:create [options] [--] <type>

Arguments:
  type                           Name for this type (e.g., "posts")

Options:
  -b, --boilerplate              Generate boilerplate/placeholder/template files.
  -t, --taxonomy=TAXONOMY        Organize content by taxonomy categories ("tags",
                                 "categories", "types", etc) (multiple values allowed)

Help:
  The content:create command helps you create a custom content type and,
  optionally, the associated boilerplate/templates.

Enjoy!

Assets 2
Pre-release

@beryllium beryllium released this Mar 2, 2019 · 25 commits to master since this release

This is Release Candidate 2 for Sculpin 3.0.0.

New requirements for this version of Sculpin include PHP 7.2 or higher.

As this is a Release Candidate, please help by filing GitHub issues if you notice any problems!

New for Release Candidate 2:

  • :folder permalink property
  • Bugfix for theme resource method

New for Release Candidate 1:

  • New --source-dir parameter to the generate command
  • New init command for initializing a bare-bones Sculpin configuration
Description:
  Initialize a default site configuration.

Usage:
  init [options]

Options:
  -t, --title=TITLE              Specify a title for your Sculpin site.
                                 [default: "My Sculpin Site"]

  -s, --subtitle=SUBTITLE        Specify a sub-title for your Sculpin site.
                                 [default: "A Static Site Powered By Sculpin"]

      --project-dir=PROJECT-DIR  The project directory.
                                 [default: "."]

Help:
  The init command initializes a default site configuration.

New for Alpha 4:

  • @lex111 has made great progress with updating sculpin's source code to use more PHP 7.x syntax and functionality.
    • Attention: Sculpin extension developers - it would be helpful to check that your extension works with this alpha release's changes.

New for Alpha 3:

  • @lex111 found and fixed an issue with the event_dispatcher service not being public.
  • A little bit of syntax cleanup (array() to [])

New for Alpha 2:

  • A number of dependencies have been updated to the latest versions. This may introduce unexpected behaviour or deprecation notices in workflows that are not currently part of the test suite.

  • Handling of the new --output-dir parameter has been modified. Bundles and extensions that rely on sculpin.output_dir should be updated to use the sculpin.writer service for writing to the proper output location.

  • The temporary workaround for the dflydev/dot-access-configuration dependency in Alpha 1 has been removed.

Alpha 1:

  • A potential BC break to watch out for is a change in the URL format of interstitial "pagination" files. Bookmarks for "Page 2" and such may need to be updated.

  • This alpha version also includes the new "sculpin content:create" command, which allows you to generate a custom data type and associated templates straight from the command line:

Usage:
  content:create [options] [--] <type>

Arguments:
  type                           Name for this type (e.g., "posts")

Options:
  -b, --boilerplate              Generate boilerplate/placeholder/template files.
  -t, --taxonomy=TAXONOMY        Organize content by taxonomy categories ("tags",
                                 "categories", "types", etc) (multiple values allowed)

Help:
  The content:create command helps you create a custom content type and,
  optionally, the associated boilerplate/templates.

Enjoy!

Assets 2
Pre-release

@beryllium beryllium released this Nov 16, 2018 · 31 commits to master since this release

This is Release Candidate 1 for Sculpin 3.0.0.

New requirements for this version of Sculpin include PHP 7.2 or higher.

As this is a Release Candidate, please help by filing GitHub issues if you notice any problems!

New for Release Candidate 1:

  • New --source-dir parameter to the generate command
  • New init command for initializing a bare-bones Sculpin configuration
Description:
  Initialize a default site configuration.

Usage:
  init [options]

Options:
  -t, --title=TITLE              Specify a title for your Sculpin site.
                                 [default: "My Sculpin Site"]

  -s, --subtitle=SUBTITLE        Specify a sub-title for your Sculpin site.
                                 [default: "A Static Site Powered By Sculpin"]

      --project-dir=PROJECT-DIR  The project directory.
                                 [default: "."]

Help:
  The init command initializes a default site configuration.

New for Alpha 4:

  • @lex111 has made great progress with updating sculpin's source code to use more PHP 7.x syntax and functionality.
    • Attention: Sculpin extension developers - it would be helpful to check that your extension works with this alpha release's changes.

New for Alpha 3:

  • @lex111 found and fixed an issue with the event_dispatcher service not being public.
  • A little bit of syntax cleanup (array() to [])

New for Alpha 2:

  • A number of dependencies have been updated to the latest versions. This may introduce unexpected behaviour or deprecation notices in workflows that are not currently part of the test suite.

  • Handling of the new --output-dir parameter has been modified. Bundles and extensions that rely on sculpin.output_dir should be updated to use the sculpin.writer service for writing to the proper output location.

  • The temporary workaround for the dflydev/dot-access-configuration dependency in Alpha 1 has been removed.

Alpha 1:

  • A potential BC break to watch out for is a change in the URL format of interstitial "pagination" files. Bookmarks for "Page 2" and such may need to be updated.

  • This alpha version also includes the new "sculpin content:create" command, which allows you to generate a custom data type and associated templates straight from the command line:

Usage:
  content:create [options] [--] <type>

Arguments:
  type                           Name for this type (e.g., "posts")

Options:
  -b, --boilerplate              Generate boilerplate/placeholder/template files.
  -t, --taxonomy=TAXONOMY        Organize content by taxonomy categories ("tags",
                                 "categories", "types", etc) (multiple values allowed)

Help:
  The content:create command helps you create a custom content type and,
  optionally, the associated boilerplate/templates.

Enjoy!

Assets 2
Pre-release

@beryllium beryllium released this Oct 13, 2018 · 37 commits to master since this release

This is an alpha release of Sculpin 3.0.0.

New requirements for this version of Sculpin include PHP 7.2 or higher.

As this is an Alpha, please keep an eye out for issues. There are some Symfony 3.4-related deprecation notices that have been popping up under certain environments, and it would be nice to resolve them. If you have such an environment, it would be helpful to add those notices to an issue to be resolved.

New for Alpha 4:

  • @lex111 has made great progress with updating sculpin's source code to use more PHP 7.x syntax and functionality.
    • Attention: Sculpin extension developers - it would be helpful to check that your extension works with this alpha release's changes.

New for Alpha 3:

  • @lex111 found and fixed an issue with the event_dispatcher service not being public.
  • A little bit of syntax cleanup (array() to [])

New for Alpha 2:

  • A number of dependencies have been updated to the latest versions. This may introduce unexpected behaviour or deprecation notices in workflows that are not currently part of the test suite.

  • Handling of the new --output-dir parameter has been modified. Bundles and extensions that rely on sculpin.output_dir should be updated to use the sculpin.writer service for writing to the proper output location.

  • The temporary workaround for the dflydev/dot-access-configuration dependency in Alpha 1 has been removed.

Alpha 1:

  • A potential BC break to watch out for is a change in the URL format of interstitial "pagination" files. Bookmarks for "Page 2" and such may need to be updated.

  • This alpha version also includes the new "sculpin content:create" command, which allows you to generate a custom data type and associated templates straight from the command line:

Usage:
  content:create [options] [--] <type>

Arguments:
  type                           Name for this type (e.g., "posts")

Options:
  -b, --boilerplate              Generate boilerplate/placeholder/template files.
  -t, --taxonomy=TAXONOMY        Organize content by taxonomy categories ("tags",
                                 "categories", "types", etc) (multiple values allowed)

Help:
  The content:create command helps you create a custom content type and,
  optionally, the associated boilerplate/templates.

Enjoy!

Assets 2

@beryllium beryllium released this Oct 13, 2018

Fixed

  • (#393) Non-existent flag being passed to YamlConfigurationBuilder due to an accidental BC break in the dflydev/dot-access-configuration library.
  • (#343) slugs are used literally and not escaped again.
Assets 2
You can’t perform that action at this time.