Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions examples/rails/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ import rails from 'vite-plugin-rails'
import WindiCSS from 'vite-plugin-windicss'
import BugsnagPlugins from './plugins/bugsnag'

const administratorAssetsPath = process.env.ADMINISTRATOR_ASSETS_PATH

export default defineConfig({
plugins: [
BugsnagPlugins,
Expand All @@ -26,13 +28,13 @@ export default defineConfig({
],
// Example: Importing assets from arbitrary paths.
resolve: {
alias: {
'@administrator/': `${process.env.ADMINISTRATOR_ASSETS_PATH}/`,
},
alias: administratorAssetsPath
? { '@administrator/': `${administratorAssetsPath}/` }
: {},
},
server: {
fs: {
allow: [process.env.ADMINISTRATOR_ASSETS_PATH!],
allow: administratorAssetsPath ? [administratorAssetsPath] : [],
},
},
})
3 changes: 0 additions & 3 deletions vite-plugin-rails/tests/build.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ describe('config', () => {
'assets/external-BwssHmjP.js',
'assets/external-BwssHmjP.js.br',
'assets/external-BwssHmjP.js.gz',
'assets/external-BwssHmjP.js.map',
'assets/index-qTzjl5TV.js',
'assets/index-qTzjl5TV.js.br',
'assets/index-qTzjl5TV.js.gz',
Expand All @@ -34,7 +33,6 @@ describe('config', () => {
'assets/main-Ddvw3iap.js',
'assets/main-Ddvw3iap.js.br',
'assets/main-Ddvw3iap.js.gz',
'assets/main-Ddvw3iap.js.map',
'assets/sassy-D5kz_As0.css',
'assets/sassy-D5kz_As0.css.br',
'assets/sassy-D5kz_As0.css.gz',
Expand All @@ -47,7 +45,6 @@ describe('config', () => {
'assets/vue-CoJ_KGkH.js',
'assets/vue-CoJ_KGkH.js.br',
'assets/vue-CoJ_KGkH.js.gz',
'assets/vue-CoJ_KGkH.js.map',
'index.html',
'index.html.br',
'index.html.gz',
Expand Down
2 changes: 1 addition & 1 deletion vite-plugin-ruby/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ function config (userConfig: UserConfig, env: ConfigEnv): UserConfig {

const build = {
emptyOutDir: userConfig.build?.emptyOutDir ?? (ssrBuild || isLocal),
sourcemap: !isLocal,
...userConfig.build,
assetsDir,
manifest: !ssrBuild,
Expand Down Expand Up @@ -108,6 +107,7 @@ function configureServer (server: ViteDevServer) {
res.statusCode = 404
const file = readFileSync(resolve(__dirname, 'dev-server-index.html'), 'utf-8')
res.end(file)
return
}

next()
Expand Down
10 changes: 6 additions & 4 deletions vite-plugin-ruby/tests/index.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,23 @@ describe('config', () => {
const pluginConfig = plugin[0].config
defaultConfig.configPath = './default.vite.json'

// Sourcemap is no longer set by the plugin (Vite's safe default of `false`
// applies in all modes). Users opt in via `build.sourcemap` in their vite.config.
const productionConfig = pluginConfig(defaultConfig, { mode: 'production' })
expect(productionConfig.build.emptyOutDir).toBe(false)
expect(productionConfig.build.sourcemap).toBe(true)
expect(productionConfig.build.sourcemap).toBeUndefined()

const stagingConfig = pluginConfig(defaultConfig, { mode: 'staging' })
expect(stagingConfig.build.emptyOutDir).toBe(false)
expect(stagingConfig.build.sourcemap).toBe(true)
expect(stagingConfig.build.sourcemap).toBeUndefined()

const developmentConfig = pluginConfig(defaultConfig, { mode: 'development' })
expect(developmentConfig.build.emptyOutDir).toBe(true)
expect(developmentConfig.build.sourcemap).toBe(false)
expect(developmentConfig.build.sourcemap).toBeUndefined()

const testConfig = pluginConfig(defaultConfig, { mode: 'test' })
expect(testConfig.build.emptyOutDir).toBe(true)
expect(testConfig.build.sourcemap).toBe(false)
expect(testConfig.build.sourcemap).toBeUndefined()

expect(() => {
pluginConfig({ ...defaultConfig, build: { ssr: true } }, { mode: 'production' })
Expand Down
22 changes: 13 additions & 9 deletions vite_ruby/lib/vite_ruby.rb
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ def framework_libraries

def initialize(**config_options)
@config_options = config_options
@running_mutex = Mutex.new
end

def logger
Expand All @@ -85,15 +86,18 @@ def digest
# NOTE: Checks only once every second since every lookup calls this method.
def dev_server_running?
return false unless run_proxy?
return @running if defined?(@running) && Time.now - @running_checked_at < 1

begin
Socket.tcp(config.host, config.port, connect_timeout: config.dev_server_connect_timeout).close
@running = true
rescue
@running = false
ensure
@running_checked_at = Time.now

@running_mutex.synchronize do
return @running if defined?(@running) && Time.now - @running_checked_at < 1

begin
Socket.tcp(config.host, config.port, connect_timeout: config.dev_server_connect_timeout).close
@running = true
rescue
@running = false
ensure
@running_checked_at = Time.now
end
end
end

Expand Down